package Date;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* 计算商品促销日期
* 程序启动后,要求输入某商品的生产日期以及保值期的天数
* 然后经过计算输出促销日期。
* 促销日期的定义为:商品过期日期前2周的周三。
* 例如:
* 生产日期为2018-01-29
* 保值期14天
* 那么促销日应当为2018-01-31
*
*/
public class Test2 {
public static void main(String[] args) throws ParseException, IOException {
BufferedReader br =new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入生产日期:");
String datestr =br.readLine();
System.out.println("请输入保值期的天数:");
int days =Integer.parseInt(br.readLine());
SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd");
Date date =sdf.parse(datestr);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
//计算过期日
calendar.add(Calendar.DAY_OF_YEAR, days);
//计算前2周
calendar.add(Calendar.DAY_OF_YEAR, -14);
//设置为当周的周三
calendar.set(Calendar.DAY_OF_WEEK, Calendar.WEDNESDAY);
//转换回Date
date=calendar.getTime();
//转换为字符串
String line =sdf.format(date);
System.out.println("促销日为:"+line);
}
}