这一年的第几天

/*
4. 分析以下需求,并用代码实现:
(1)通过键盘录入日期字符串,格式(2019-04-03)
(2)输出该日期是星期几及这一年的第几天
(3)如输入:2019-04-03,输出"2019年-4月-3日是星期三,是2019年的第93天"
*/
public class DiJitian {
public static void main(String[] args) throws ParseException {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入格式为2019-04-03的日期");
String line = scanner.nextLine();
//创建格式日期的对象
SimpleDateFormat sim = new SimpleDateFormat("yyyy-MM-dd");
//将指定的字符串解析为date时间对象
Date dt = sim.parse(line);
//按照新的解析方式打印出来
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年-MM月-dd日");
//按照新的解析方式打印出来
System.out.println(sdf.format(dt)+" ");
//获取一个日历的对象
Calendar ca = Calendar.getInstance();
//将date对象转换为calendar对象
ca.setTime(dt);
//获取这一天的是该周的第几天
int k = ca.get(Calendar.DAY_OF_WEEK);
switch (k){
case 1:System.out.print("是星期日"+", ");break;
case 2:System.out.print("是星期一"+", ");break;
case 3:System.out.print("是星期二"+", ");break;
case 4:System.out.print("是星期三"+", ");break;
case 5:System.out.print("是星期四"+",");break;
case 6:System.out.print("是星期五"+", ");break;
case 7:System.out.print("是星期六"+", ");break;
}
System.out.println("是"+ca.get(Calendar.YEAR)+"年的第:"+ca.get(Calendar.DAY_OF_YEAR)+"天");

}
}
posted @ 2019-12-11 11:28  YRSWBY  阅读(183)  评论(0)    收藏  举报