當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java java.time.Duration用法及代碼示例


Duration 是 Java 時間庫中存在的基於值的類。它用於獲取基於時間的時間量。該類是不可變的且線程安全的。本文介紹了此類中存在的所有方法以及使用類方法的一些基本示例。

該類實現 Serialized、Comparable<Duration>、TemporalAmount 接口。

課堂上出現的字段:

場地 說明
靜態持續時間 它是零持續時間的常數。

類中存在的方法:

方法 說明
abs() 此方法返回長度的正副本
addTo(Temporal temporal) 此方法將此持續時間添加到指定的時間對象。
之間的持續時間(時間開始包含,時間結束不包含) 此方法查找兩個 Temporal 對象之間的持續時間。
compareTo(Duration otherDuration) 此方法將此持續時間與指定的持續時間進行比較。
dividedBy(long divisor) 此方法返回此持續時間除以指定值的副本。
equals(Object otherDuration) 此方法檢查此持續時間是否等於指定的持續時間。
from(TemporalAmount amount) 此方法從時間量中獲取 Duration 實例。
get(TemporalUnit unit) 該方法獲取所請求單位的值。
getNano() 此方法獲取此持續時間內每秒內的納秒數。
getSeconds() 此方法獲取此持續時間的秒數。
getUnits() 此方法獲取此持續時間支持的單位集。
hashCode() 此持續時間的哈希碼。
isNegative() 此方法檢查此持續時間是否為負數(不包括零)。
isZero() 此方法檢查此持續時間是否為零長度。
minus(Duration duration) 此方法返回此持續時間的副本,並減去指定的持續時間。
minus(long amountToSubtract, TemporalUnit unit) 此方法返回此持續時間的副本,並減去指定的持續時間。
minusDays(long daysToSubtract) 此方法返回此持續時間的副本,並減去標準 24 小時日中的指定持續時間。
minusHours(long hoursToSubtract) 此方法返回此持續時間的副本,並減去指定的持續時間(以小時為單位)。
minusMillis(long millisToSubtract) 此方法返回此持續時間的副本,並減去指定的持續時間(以毫秒為單位)。
minusMinutes(long minutesToSubtract) 此方法返回此持續時間的副本,並減去指定的持續時間(以分鍾為單位)。
minusNanos(long nanosToSubtract) 此方法返回此持續時間的副本,並減去指定的納秒持續時間。
minusSeconds(long secondsToSubtract) 此方法返回此持續時間的副本,並減去指定的持續時間(以秒為單位)。
multipliedBy(long multiplicand) 此方法返回此持續時間乘以標量的副本。
negated() 此方法返回此持續時間的副本,其中長度取反。
of(long amount, TemporalUnit unit) 此方法獲取表示指定單位數量的 Duration。
ofDays(long days) 此方法獲取表示標準 24 小時天數的 Duration。
ofHours(long hours) 此方法獲取表示標準小時數的 Duration。
ofMillis(long millis) 此方法獲取表示毫秒數的 Duration。
ofMinutes(long minutes) 此方法獲取表示標準分鍾數的 Duration。
ofNanos(long nanos) 此方法獲取表示納秒數的持續時間。
ofSeconds(long seconds) 此方法獲取表示秒數的 Duration。
ofSeconds(long seconds, long nanoAdjustment) 此方法獲取表示秒數的持續時間和以納秒為單位的調整。
parse(CharSequence text) 此方法從文本字符串(例如 PnDTnHnMn.nS)獲取持續時間。
plus(Duration duration) 此方法返回此持續時間的副本,並添加了指定的持續時間。
plus(long amountToAdd, TemporalUnit unit) 此方法返回此持續時間的副本,並添加了指定的持續時間。
plusDays(long daysToAdd) 此方法返回此持續時間的副本,並添加標準 24 小時天數中的指定持續時間。
plusHours(long hoursToAdd) 此方法返回此持續時間的副本,並添加指定的持續時間(以小時為單位)。
plusMillis(long millisToAdd) 此方法返回此持續時間的副本,並添加指定的持續時間(以毫秒為單位)。
plusMinutes(long minutesToAdd) 此方法返回此持續時間的副本,並添加指定的持續時間(以分鍾為單位)。
plusNanos(long nanosToAdd) 此方法返回此持續時間的副本,並添加指定的納秒持續時間。
plusSeconds(long secondsToAdd) 此方法返回此持續時間的副本,並添加指定的持續時間(以秒為單位)。
subtractFrom(Temporal temporal) 此方法從指定的時間對象中減去此持續時間。
toDays() 此方法獲取此持續時間的天數。
toHours() 此方法獲取此持續時間內的小時數。
toMillis() 此方法將此持續時間轉換為總長度(以毫秒為單位)。
toMinutes() 此方法獲取此持續時間的分鍾數。
toNanos() 此方法將此持續時間轉換為以納秒為單位表示為 long 的總長度。
toString() 使用基於 ISO-8601 秒的表示形式的此持續時間的字符串表示形式,例如 PT8H6M12.345S。
withNanos(int nanoOfSecond) 此方法返回此持續時間的副本(具有指定的納秒)。
withSeconds(long seconds) 此方法返回具有指定秒數的該持續時間的副本。

示例 1:此示例說明了 Duration 類的簡單使用。

Java


// Importing required classes
import java.time.Duration;
import java.time.LocalTime;
import java.time.temporal.ChronoUnit;
public class GFG {
   public static void main(String[] args) {
       
      // Initializing Duration variable
      Duration duration = Duration.between(LocalTime.NOON,LocalTime.MIDNIGHT);  
       
      // Printing difference between time in seconds
      System.out.println(duration.get(ChronoUnit.SECONDS));    
       
      // Finding absolute difference
      Duration absDuration = duration.abs();
       
      // Printing absolute time difference in seconds
      System.out.println(absDuration.get(ChronoUnit.SECONDS));    
   }
}
輸出
-43200
43200

示例2:

Java


// Importing required classes
import java.time.Duration;
import java.time.temporal.ChronoUnit;
public class GFG {
   public static void main(String[] args) {
       
      // Getting duration in an hour
      Duration duration = Duration.from(ChronoUnit.HOURS.getDuration());
       
      // Printing duration in minutes
      System.out.println(duration.toMinutes());
   }
}

輸出:

60


相關用法


注:本文由純淨天空篩選整理自aman neekhara大神的英文原創作品 java.time.Duration Class in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。