Método ChronoZonedDateTime range() en Java con ejemplos

El método range() de una interfaz ChronoZonedDateTime se utiliza para obtener el rango de valores válidos para los pases de campo como parámetro. Este método devuelve el objeto ValueRange que contiene los valores válidos mínimo y máximo para un campo. Este ChronoZonedDateTime es útil para mejorar la precisión del rango devuelto. Cuando el campo no es compatible y el método no puede devolver valores de rango, se lanza una excepción.

Sintaxis:

default ValueRange range(TemporalField field)

Parámetros: este método acepta un solo campo de parámetro que es el campo para obtener el rango de valores.

Valor de retorno: este método devuelve ValueRange, que es el rango de valores válidos para el campo, no nulo.

Excepción: este método arroja las siguientes excepciones:

  • DateTimeException : si no se puede obtener el rango del campo.
  • UnsupportedTemporalTypeException : si el campo no es compatible.

Los siguientes programas ilustran el método range():

Programa 1:

// Java program to demonstrate
// ChronoZonedDateTime.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 ChronoZonedDateTime object
        ChronoZonedDateTime zonedDT
            = ZonedDateTime
                  .parse(
                      "2018-12-06T19:21:12.123+05:30[Asia/Calcutta]");
  
        // print ChronoZonedDateTime
        System.out.println("ChronoZonedDateTime of Calcutta: "
                           + zonedDT);
  
        // get range of MILLI_OF_SECOND field
        // from ChronoZonedDateTime using range method
        ValueRange range
            = zonedDT.range(ChronoField.MILLI_OF_SECOND);
  
        // print range of MILLI_OF_SECOND
        System.out.println("Range of MILLI_OF_SECOND: "
                           + range);
    }
}
Producción:

ChronoZonedDateTime of Calcutta: 2018-12-06T19:21:12.123+05:30[Asia/Calcutta]
Range of MILLI_OF_SECOND: 0 - 999

Programa 2:

// Java program to demonstrate
// ChronoZonedDateTime.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 ChronoZonedDateTime object
        ChronoZonedDateTime zonedDT
            = ZonedDateTime
                  .parse(
                      "2018-10-25T23:12:31.123+02:00[Europe/Paris]");
  
        // print ChronoZonedDateTime
        System.out.println("ChronoZonedDateTime of Calcutta: "
                           + zonedDT);
  
        // get range of NANO_OF_SECOND field
        // from zonedDateTime using range method
        ValueRange range
            = zonedDT.range(ChronoField.NANO_OF_SECOND);
  
        // print range of NANO_OF_SECOND
        System.out.println("Range of NANO_OF_SECOND: "
                           + range);
    }
}
Producción:

ChronoZonedDateTime of Calcutta: 2018-10-25T23:12:31.123+02:00[Europe/Paris]
Range of NANO_OF_SECOND: 0 - 999999999

Referencia: https://docs.oracle.com/javase/9/docs/api/java/time/chrono/ChronoZonedDateTime.html#range-java.time.temporal.TemporalField-

Publicación traducida automáticamente

Artículo escrito por ShubhamMaurya3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *