用戶輸入商品生產日期和保質期(天數),通過程序計算促銷日期。


* 用戶輸入商品生產日期和保質期(天數),通過程序計算促銷日期。
* 計算規則為:到保質期前14天所在周的周三為促銷日。

/**
 * 用戶輸入商品生產日期和保質期(天數),通過程序計算促銷日期。
 * 計算規則為:到保質期前14天所在周的周三為促銷日。控制台交互情況如圖-1所示
 * 思路: 
 * 1. 用戶輸入生產日期和保質期(天數),就可以求出 過期日期
 * 2. 通過過期日期減去14天即為促銷日期所在的周
 * 3. 通過所在周求出周三的日期
 * 算法:
 * 1.通過用戶輸入的兩個日期,轉換生產日期字符串為DATE類型,然后通過calendar進行加30天的計算,求出過期的日期
 * 2.通過calendar的過期日期,減去14天,計算出促銷日期所在周
 * 3.設置calendar的為周三,即為促銷日
 * 4.轉換為DATE在轉換為STR輸出。
 * 
 */
public class HomeWork01 {
    public static void main(String[] args) throws ParseException {
        Scanner s = new Scanner(System.in);
        
        System.out.println("請輸入生產日期(yyyy-MM-dd)");
        //用戶輸入生產日期
        String produceDate_usr = s.next();
        //用戶輸入保質期(天數)
        System.out.println("請輸入保質期(天數)");
        int badDays_usr = s.nextInt();
        //根據用戶輸入的兩個日期,求出過期日期為
        //首先,需要SDF定義時間格式
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        
        //Str --- Data  用 sdf.prase(produceDate_usr)
        Date produceDate = sdf.parse(produceDate_usr);
        
        //然后轉換date為了進行calendar計算加30天的記過
        //Date ----  Calendar 用 calendar.setTime()
        //前提:先建立Calendar實例
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(produceDate);
    
        //轉換完成進行計算,先加30天保質期,用 calendar.add(Calendar.Day_Of_Year,30)
        calendar.add(Calendar.DAY_OF_YEAR,    badDays_usr );
        //加完30天減去14天
        calendar.add(Calendar.DAY_OF_YEAR, -14);
        //已經到促銷的這周,設置周三的日期
//        System.out.println(calendar.getTime());
        calendar.set(Calendar.DAY_OF_WEEK, 4);
        //計算完畢,Calendar ---- Data  用calendar.getTime()
//        System.out.println(calendar.getTime());
        Date goodDate = calendar.getTime();
        
        //然后Date轉換成字符串形式輸出  Date ---- Str用  sdf.format(goodDate);
        String result = sdf.format(goodDate);
        
        //輸出結果
        System.out.println("促銷日期:"+result);
    }
}
View Code

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM