现在,我可以获得两个本地时间之间的小时数,如下所示:
public long getHours(){ return ChronoUnit.HOURS.between(this.timeIn, this.timeOut); }
但结果只是小时数,我想把分钟数也包括在内,例如,如果5小时30分钟通过,结果是5.30。编辑:例如,timeIn是10:00:00,timeout是15:30:00。我需要这两个时间之间的小时和分钟
pkwftd7m1#
您可以使用java.time API中的Duration.between方法:
Duration.between
public static Duration getDuration(){ LocalTime timeIn = LocalTime.now();; LocalTime timeOut = timeIn.plusHours(5).plusMinutes(30).plusSeconds(23); return Duration.between(timeIn, timeOut); }
返回上述示例:
PT5H30M23S
该文本采用标准ISO 8601格式。要以不同的方式格式化它,请使用Duration类中的方法toXXXPart():
Duration
toXXXPart()
public static String format(Duration duration) { return String.format("%02d:%02d:%02d", duration.toHoursPart(), duration.toMinutesPart(), duration.toSecondsPart()); }
与上述示例相同的示例输出:
System.out.println(format(getDuration()));
印刷品
05:30:23
1条答案
按热度按时间pkwftd7m1#
您可以使用java.time API中的
Duration.between
方法:返回上述示例:
该文本采用标准ISO 8601格式。
要以不同的方式格式化它,请使用
Duration
类中的方法toXXXPart()
:与上述示例相同的示例输出:
印刷品