//
private static List getMonth(String startDate, String endDate) throws ParseException {
List list = new ArrayList();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.setTime(sdf.parse(startDate));
c2.setTime(sdf.parse(endDate));
int year = c2.get(Calendar.YEAR) - c1.get(Calendar.YEAR);
int month = c2.get(Calendar.MONTH)+year*12 - c1.get(Calendar.MONTH);
for(int i = 0;i<=month;i++){
c1.setTime(sdf.parse(startDate));
c1.add(c1.MONTH, i);
list.add(sdf.format(c1.getTime()));
}
return list;
}
//主方法
public static void main(String[] args) throws ParseException {
String startDate = "2019-10-03";
String endDate = "2020-10-03";
List<String> list = getMonth(startDate, endDate);
System.out.println(list);
}
java中取两个日期相差月份
最新推荐文章于 2024-07-13 03:06:16 发布
本文介绍了一个Java方法,该方法能够生成指定开始日期和结束日期之间的所有月份,并以列表形式返回这些月份的字符串表示。通过使用SimpleDateFormat和Calendar API,此方法能够有效地遍历所需的日期范围。

2356

被折叠的 条评论
为什么被折叠?



