1、Clock类可用于访问当前日期和时间。Clock可以获得当前时区,而不是System.currenttimeMillis()。
Clock clock = Clock.systemDefaultZone();long millis = clock.millis(); Instant instant = clock.instant(); Date legacyDate = Date.from(instant); // legacy java.util.Date
2、时间用zoneId表示,zoneId可以通过静态工厂访问。
System.out.println(ZoneId.getAvailableZoneIds());// prints all available timezone ids ZoneId zone1 = ZoneId.of("Europe/Berlin"); ZoneId zone2 = ZoneId.of("Brazil/East"); System.out.println(zone1.getRules()); System.out.println(zone2.getRules()); // ZoneRules[currentStandardOffset=+01:00] // ZoneRules[currentStandardOffset=-03:00]
3、LocalTime表示没有时间区域,例如10pm或17:30:15。
LocalTime now1 = LocalTime.now(zone1); LocalTime now2 = LocalTime.now(zone2); System.out.println(now1.isBefore(now2)); // false long hoursBetween = ChronoUnit.HOURS.between(now1, now2); long minutesBetween = ChronoUnit.MINUTES.between(now1, now2); System.out.println(hoursBetween); // -3 System.out.println(minutesBetween); // -239
以上是Java中常用的时间API及使用方法介绍的详细内容。更多信息请关注PHP中文网其他相关文章!