【发布时间】:2015-07-20 15:13:56
【问题描述】:
我想知道如何找到自上次在 Java 中是 8:45 以来已经过去了多少时间。
例如
时间:8:44 -> 23:59
时间 8:46 -> 00.01
我现在有一个相当丑陋的解决方案。
if (calendar.get(Calendar.HOUR_OF_DAY) >= 8) {
if (calendar.get(Calendar.MINUTE) >= 45 || calendar.get(Calendar.HOUR_OF_DAY) > 9) {
System.out.println("it between 8:45 and 00:00");
}
}
else {
System.out.println("its between 00:00 and 8:45");
}
【问题讨论】:
-
使用 Period 更容易(在 java 1.8 上可用)-link
-
我们说的是一天 24 小时吗?或者您是否需要考虑daylight saving time 转换造成的缺失时间间隔和重复时间重叠?