Java LocalTime 介紹

LocalTime 是一個不可變的類和執行緒安全的,用於表示時間,通常被視為小時 - 分秒。時間表示為納秒精度。例如,值“13:45.30.123456789”可以儲存在 LocalTime 中。

此類不儲存或表示日期或時區。相反,它是對掛鐘上所見的當地時間的描述。如果沒有附加資訊(如偏移或時區),它不能代表時間線上的瞬間。這是一個基於值的類,equals 方法應該用於比較。

欄位

MAX - 支援的最大 LocalTime,‘23:59:59.999999999’。MIDNIGHT,MIN,NOON

重要的靜態方法

now(),now(Clock clock),now(ZoneId zone),parse(CharSequence text)

重要的例項方法

isAfter(LocalTime other),isBefore(LocalTime other),減去(TemporalAmount amountToSubtract),減去(long amountToSubtract,TemporalUnit unit),加上(TemporalAmount amountToAdd),加上(long amountToAdd,TemporalUnit unit)

ZoneId zone = ZoneId.of("Asia/Kolkata");
LocalTime now = LocalTime.now();
LocalTime now1 = LocalTime.now(zone);
LocalTime then = LocalTime.parse("04:16:40");

可以通過以下任何方式計算時間差

long timeDiff = Duration.between(now, now1).toMinutes();
long timeDiff1 = java.time.temporal.ChronoUnit.MINUTES.between(now2, now1);

你還可以從 LocalTime 的任何物件新增/減去小時,分鐘或秒。

minusHours(long hoursToSubtract),minusMinutes(long hoursToMinutes),minusNanos(long nanToSubtract),minusSeconds(long secondsToSubtract),plusHours(long hoursToSubtract),plusMinutes(long hoursToMinutes),plusNanos(long nanosToSubtract),plusSeconds(long secondsToSubtract)

now.plusHours(1L);
now1.minusMinutes(20L);