我有一个Java.Time.LocalTime
的实例作为开始时间。在完成任务后,我想获取当前时间并计算两者之间的差异,以小时
为单位。
int noOfHours = LocalTime.now() - startTime;
您可以使用:
import static java.time.temporal.ChronoUnit.HOURS;
HOURS.between(startTime, LocalTime.now());
两种选择,都涉及到java.time.temporal.ChronoUnit.HOURS
:
// use the until() method on LocalTime
long noOfHours = startTime.until(LocalTime.now(), ChronoUnit.HOURS);
// use the between() method on HOURS
long noOfHours = ChronoUnit.HOURS.between(startTime, LocalTime.now());
要将long
转换为int
,请使用Math.toIntExact(noOfHours)
。
java-8
标签,所以我认为当我有一个Java8问题时应该使用它。 - Jens