[英]How to calculate minutes difference between two times
如何僅計算兩次分鍾之間的差異,假設我們有兩次(java 中的 LocalTime)。
為了得到小時的差異,我使用onDutyTime.until(offDutyTime, ChronoUnit.HOURS)
這給了我 6 小時的正確結果。 但是如何在這兩次分鍾之間獲得分鍾差(30)。或者還有其他方法可以讓我獲得 6:30 的比賽時差。
我建議使用Duration
。
LocalTime onDutyTime = LocalTime.of(8, 0);
LocalTime offDutyTime = LocalTime.of(14, 30);
Duration d = Duration.between(onDutyTime, offDutyTime);
System.out.println(d);
System.out.println(d.toMinutes());
System.out.println(d.toHours());
System.out.println(d.toMinutesPart());
這輸出
PT6H30M
390
6
30
編輯:請參閱此答案以獲得更好的方法。
我會用:
long amount = ChronoUnit.MINUTES.between(start, end);
這將返回兩個LocalTime
實例之間的分鍾數。
您還可以使用:
long amount = onDutyTime.until(offDutyTime, ChronoUnit.MINUTES);
然后,只需除以60
即可得到小時數:
long hours = amount / 60;
並獲取余數以獲得會議記錄:
long minutes = amount % 60;
您可以使用以下操作:
LocalTime timeDiff = t2.minusNanos(t1.toNanoOfDay());
結果將包含您想要的所有時間單位,無需除以時間量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.