📌  相关文章
📜  Java中的 ZoneOffset range(TemporalField) 方法及示例

📅  最后修改于: 2022-05-13 01:55:04.162000             🧑  作者: Mango

Java中的 ZoneOffset range(TemporalField) 方法及示例

Java中的 ZoneOffset range(TemporalField) 方法及示例

Java.time 包ZoneOffset 类range(TemporalField)方法用于获取ZoneOffset 中作为参数传递的temporalField 的范围。此方法返回一个 ValueRange 值,说明相同。

句法:

public ValueRange range(TemporalField temporalField)

参数:此方法接受参数temporalField ,该参数是要在此 ZoneOffset 实例中查询范围的字段。它不应该为空。

返回值:此方法返回一个ValueRange 值,说明此 ZoneOffset 实例中此 temporalField 的范围。

例外:此方法抛出:

  • DateTimeException : 如果无法获取该字段的范围。
  • UnsupportedTemporalTypeException :如果不支持该字段。

下面的示例说明了 ZoneOffset.range() 方法:

示例 1:

// Java code to illustrate range() method
  
import java.time.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Get the ZoneOffset instance
        ZoneOffset zoneOffset
            = ZoneOffset.of("+05:30");
        System.out.println("ZoneOffset: "
                           + zoneOffset);
  
        // Using range() method
        System.out.println("Second value: "
                           + zoneOffset.range(ChronoField.OFFSET_SECONDS));
    }
}
输出:
ZoneOffset: +05:30
Second value: -64800 - 64800

示例 2:显示 UnsupportedTemporalTypeException

// Java code to illustrate range() method
  
import java.time.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        try {
            // Get the ZoneOffset instance
            ZoneOffset zoneOffset
                = ZoneOffset.ofHours(5);
            System.out.println("ZoneOffset: "
                               + zoneOffset);
  
            // Using range() method
            System.out.println("Second value: "
                               + zoneOffset.range(ChronoField.NANO_OF_DAY));
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}
输出:
ZoneOffset: +05:00
java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: NanoOfDay

参考: Oracle 文档