gpt4 book ai didi

java - 考虑到节假日类次,如何计算日期之间的天数?

转载 作者:行者123 更新时间:2023-11-30 07:29:02 29 4
gpt4 key购买 nike

我找到了如下建议:

Calendar calendar1 = Calendar.getInstance();
Calendar calendar2 = Calendar.getInstance();
calendar1.set(2007, 01, 10);
calendar2.set(2007, 07, 01);
long milliseconds1 = calendar1.getTimeInMillis();
long milliseconds2 = calendar2.getTimeInMillis();
long diff = milliseconds2 - milliseconds1;
long diffSeconds = diff / 1000;
long diffMinutes = diff / (60 * 1000);
long diffHours = diff / (60 * 60 * 1000);
long diffDays = diff / (24 * 60 * 60 * 1000);

但是当从冬天到夏天改变时间时,会有 1 小时的差异。有没有一种通用的方法来计算这个?谢谢。

最佳答案

您应该考虑使用 joda-time 库,它提供了更有用的日期时间接口(interface)。例如,你的问题是这样解决的:Days.daysBetween(startInstant, endInstant).getDays()

至于使用标准日历——我认为没有比使用 Calendar.get(Calendar.DAY_OF_YEAR) 更好的选择了——这将使您能够获得一个日历年中天数的差异。要将此方法扩展到几年,我建议仅遍历开始时刻和结束时刻之间的所有中间年份,对 Calendar.getActualMaximum(DAY_OF_YEAR) 求和。不是很方便的方式,但是......

关于java - 考虑到节假日类次,如何计算日期之间的天数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8801781/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com