【发布时间】:2015-12-28 14:10:22
【问题描述】:
我需要一些逻辑来计算总天数。例如 如果我输入 3 表示,它将计算从当前月份到接下来两个月的总天数。
与年份相同。如果我输入 3 表示它将计算从本年到下两年的总天数。
总天数 = 输入值 * 月份。
【问题讨论】:
标签: java calendar days monthcalendar leap-year
我需要一些逻辑来计算总天数。例如 如果我输入 3 表示,它将计算从当前月份到接下来两个月的总天数。
与年份相同。如果我输入 3 表示它将计算从本年到下两年的总天数。
总天数 = 输入值 * 月份。
【问题讨论】:
标签: java calendar days monthcalendar leap-year
有几种方法可以实现这一点。这是你的作业吗?我假设你的老师希望你实现自己的闰年和计数日函数。
如果这只是一个应用程序,我只会使用 java 8 LocalDate:
飞蛾天差异:
LocalDate ldStart = LocalDate.now();
LocalDate ldEnd = LocalDate.now().plusMonths(2);
long days = ldStart.until(ldEnd, ChronoUnit.DAYS);
System.out.println(days);
年日差异:
LocalDate ldStart = LocalDate.now();
LocalDate ldEnd = LocalDate.now().plusYears(2);
long days = ldStart.until(ldEnd, ChronoUnit.DAYS);
【讨论】:
'java.util.Calendar' 有你需要的东西。创建一个新日历并将getTime() 保存在一个变量中以进行比较。然后使用Calendar.add 方法获取未来的日期——如果你想要的话,它可以增加 3 个月。再次致电getTime()。这些时间的基本单位是毫秒,因此您可以从另一个中减去一个以获得日期之间的毫秒数。将其除以 86,400,000(一天中的毫秒数)即可得出日期之间的天数。
【讨论】: