问题描述
1、输出两个日期之间的每一天(DAY)
2、输出两个日期之间的每一周的区间(WEEK)
3、输出两个日期之间的每个月份(MONTH)
前驱知识(三个常用的Class)
Date
java.util 包提供了 Date 类来封装当前的日期和时间。
SimpleDateFormat
SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行。
常见用法(date格式化转日期字符串互转):
String dateStr = "2018-12-12"
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//日期字符串转Date
Date date = sdf.parse(dateStr );
//Date转日期字符串
String ret = sdf.format(date);
Calendar
Calendar是日历的意思,区别于Date,Date是一个绝对时间,而Calendar是对时间的一种描述方式,不同国家、不同地区描述方式不同。
//获取Calendar实例的四种方式的区别(常用前两种)
//1.getInstance():使用默认的时区、默认的位置创建实例
Calendar c1 = Calendar.getInstance();
//2.getInstance(TimeZone zone):使用指定的时区、默认的位置创建实例
Calendar c2 = Calendar.getInstance(Locale.CHINA);
//3.getInstance(Locale aLocale):使用默认的时区、指定的位置创建实例
Calendar c3 = Calendar.getInstance(TimeZone.getTimeZone("GMT+9"));
//4.getInstance(TimeZone zone,Locale aLocale)使用指定的时区、指定的位置创建实例
Calendar c4 = Calendar.getInstance(TimeZone.getTimeZone("GMT+9"), Locale.US);
//本文用到的 Calendar 的方法
Calendar calendar=