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


Java ChronoLocalDateTime range()用法及代碼示例


ChronoLocalDateTime接口的range()方法用於獲取字段傳遞的有效值範圍作為參數。此方法返回一個ValueRange對象,該對象包含字段的最小和最大有效值。此ChronoLocalDateTime有助於提高返回範圍的準確性。當不支持該字段並且該方法無法返回範圍值時,將引發異常。

用法:

default ValueRange range(TemporalField field)

參數:此方法接受一個單個參數字段,該字段是獲取值範圍的字段。


返回值:此方法返回ValueRange,該值是該字段的有效值範圍,而不是null。

異常:此方法引發以下異常:

  • DateTimeException–如果無法獲得該字段的範圍。
  • UnsupportedTemporalTypeException–如果不支持該字段。

以下示例程序旨在說明range()方法:

示例1:

// Java program to demonstrate 
// ChronoLocalDateTime.range() method 
  
import java.time.*; 
import java.time.chrono.*; 
import java.time.temporal.ChronoField; 
import java.time.temporal.ValueRange; 
  
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a ChronoLocalDateTime object 
        ChronoLocalDateTime localDT 
            = LocalDateTime 
                  .parse("2018-10-25T23:12:31.123"); 
  
        // print ChronoLocalDateTime 
        System.out.println("ChronoLocalDateTime of Calcutta: "
                           + localDT); 
  
        // get range of MILLI_OF_SECOND field 
        // from ChronoLocalDateTime using range method 
        ValueRange range 
            = localDT.range(ChronoField.MILLI_OF_SECOND); 
  
        // print range of MILLI_OF_SECOND 
        System.out.println("Range of MILLI_OF_SECOND: "
                           + range); 
    } 
}
輸出:
ChronoLocalDateTime of Calcutta: 2018-10-25T23:12:31.123
Range of MILLI_OF_SECOND: 0 - 999

示例2:

// Java program to demonstrate 
// ChronoLocalDateTime.range() method 
  
import java.time.*; 
import java.time.chrono.*; 
import java.time.temporal.ChronoField; 
import java.time.temporal.ValueRange; 
  
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a ChronoLocalDateTime object 
        ChronoLocalDateTime localDT 
            = LocalDateTime 
                  .parse("2019-12-31T19:15:30"); 
  
        // print ChronoLocalDateTime 
        System.out.println("ChronoLocalDateTime of Calcutta: "
                           + localDT); 
  
        // get range of NANO_OF_SECOND field 
        // from localDateTime using range method 
        ValueRange range 
            = localDT.range(ChronoField.NANO_OF_SECOND); 
  
        // print range of NANO_OF_SECOND 
        System.out.println("Range of NANO_OF_SECOND: "
                           + range); 
    } 
}
輸出:
ChronoLocalDateTime of Calcutta: 2019-12-31T19:15:30
Range of NANO_OF_SECOND: 0 - 999999999

參考: https://docs.oracle.com/javase/9/docs/api/java/time/temporal/TemporalAccessor.html#range-java.time.temporal.TemporalField-



相關用法


注:本文由純淨天空篩選整理自srinam大神的英文原創作品 ChronoLocalDateTime range() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。