Cómo usar la clase de duración de Java

Como Usar La Clase De Duracion De Java



En la programación Java, puede haber ciertas instancias en las que surge la necesidad de medir el tiempo en segundos o nanosegundos. Por ejemplo, comparar y calcular la diferencia de tiempo entre varios marcos de tiempo o devolver los minutos, segundos o nanosegundos calculados. En tales casos, el “ Clase de duración ” en Java es útil para trabajar con funcionalidades relacionadas con el tiempo de manera efectiva.

Este blog elaborará sobre la aplicación de la 'Clase de duración' en Java.







¿Qué es la clase de duración de Java?

Duración ” es la clase basada en valores presente en la biblioteca de tiempo de Java utilizada para medir el tiempo en segundos y nanosegundos. Además, esta clase es inmutable y segura para subprocesos.



Métodos de Clase de Duración

Los siguientes son algunos de los métodos importantes de la clase Duration:



Métodos Uso
addTo(Temporal temporal) Se utiliza para agregar esta duración al objeto temporal particular.
obtener (unidad temporal) Se utiliza para obtener el valor unitario solicitado.
abdominales() Da una copia positiva de la longitud.
Duración entre (inicio temporal incluido, fin temporal exclusivo) Este método encuentra la duración entre dos objetos (temporal).
más (duración duración) Se aplica para dar una copia de esta duración con la duración añadida proporcionada.
menos (duración duración) Este método se utiliza para dar una copia de esta duración junto con la duración proporcionada restada.
obtenerNano() Obtiene los nanosegundos en el segundo en esta duración.
obtenerSegundos() Obtiene los segundos de esta duración.
de(cantidad larga, unidad temporal) Este método obtiene una Duración correspondiente a la cantidad en la unidad proporcionada.
ofSeconds (segundo largo) Obtiene una Duración referente al número de segundos.
de Nanos (largo en) Obtiene una Duración correspondiente al número de nanosegundos.
ofMinutes (minuto largo) Obtiene una Duración que significa el número de minutos.
ofMillis (milis largo) Este método obtiene una Duración que representa milisegundos.
ofHours (horas largas) Obtiene una Duración que se refiere a las horas estándar/predeterminadas.
ofDays (días largos) Obtiene una Duración que indica el número de días de 24 horas estándar/predeterminado.
compareTo(Duración x) Compara la duración dada con la Duración proporcionada.
Duración entre (Temporal startIncl, Temporal endExcl) Obtiene una Duración correspondiente a la duración entre dos objetos (temporal).
analizar (texto CharSequence) Este método obtiene una Duración de una cadena de texto.
from(cantidad temporal) Obtiene la instancia de Duración a través de una cantidad temporal.

 





Ahora, apliquemos algunos de los métodos de 'Clase de duración'.

Antes de continuar con los ejemplos, importe el paquete proporcionado a continuación para trabajar con el ' Duración ' clase:



importar java.tiempo.Duración;

 

Ejemplo 1: Aplicación de los métodos de clase de duración “entre()”, “get()” y “isNegative()” en Java

Este ejemplo aplica los métodos discutidos y devuelve el resultado correspondiente como un valor booleano o en forma de segundos calculados:

tiempo de duración de la clase pública {
vacío público estático principal ( Cadena [ ] argumentos ) {
Duración timeDiff1 = Duración.entre ( Hora local.MAX, hora local.NOON ) ;
Sistema.fuera.println ( timeDiff1.isNegative ( ) ) ;
Sistema.fuera.println ( timeDiff1.get ( ChronoUnit.SEGUNDOS ) ) ;
Duración timeDiff2 = Duración.entre ( Hora local.NOON, Hora local.MAX ) ;
Sistema.fuera.println ( timeDiff2.isNegative ( ) ) ;
Sistema.fuera.println ( timeDiff2.get ( ChronoUnit.SEGUNDOS ) ) ;
} }

 

En las líneas de código anteriores:

  • En primer lugar, aplique el “ entre() ” método de clase (Duración) para devolver la diferencia de tiempo entre los tiempos indicados.
  • Nota: El ' máx. ' corresponde a ' 23:59:59.99 ' y el ' Hora local.Mediodía ” indica “ 12:00 ”.
  • Después de eso, asocie el “ es Negativo() ” con la diferencia calculada para analizar si la diferencia de tiempo es negativa al devolver un resultado booleano.
  • Además, aplica el “ conseguir() ” método para recuperar la diferencia calculada.
  • Ahora, aplica el “ entre() ” nuevamente intercambiando los marcos de tiempo y repitiendo los enfoques discutidos para analizar los valores y devolver su diferencia.

Producción

En este resultado, se puede observar que se calculan las diferencias de tiempo correspondientes y los valores negativos se evalúan en consecuencia.

Antes de pasar al siguiente ejemplo, asegúrese de importar el siguiente paquete adicional para trabajar con la fecha y la hora:

importar java.time.temporal.ChronoUnit;

 

Ejemplo 2: Aplicación de los métodos de clase de duración “from()”, “getDuration()” y “toMinutes()”

En este ejemplo, los métodos discutidos se pueden implementar para obtener la duración en horas y recuperarla en minutos:

clase pública Durationtime2 {
vacío público estático principal ( Cadena [ ] argumentos ) {
Duración dur = Duración.desde ( ChronoUnit.HOURS.getDuration ( ) ) ;
Sistema.fuera.println ( 'La duración en minutos es ->' +dur.toMinutes ( ) ) ;
} }

 

En este bloque de código, aplique la combinación ' de() ' y ' obtenerDuración() ” métodos para obtener la duración en horas. Después de eso, asocie el “ aMinutos() ” método para devolver la duración en minutos en su lugar.

Producción

En el resultado anterior, se puede ver que los minutos correspondientes en una hora se recuperan adecuadamente.

Conclusión

Duración ” es la clase basada en valores en la biblioteca de tiempo de Java utilizada para medir el tiempo en segundos y nanosegundos. Además, se puede invocar utilizando otras unidades basadas en la duración, es decir, 'minutos' y 'horas'. Esta clase se puede usar para calcular las diferencias de tiempo entre los marcos de tiempo o devolver la duración en un formato particular, es decir, ' minutos ”. Este artículo demostró la utilización de la 'Clase de duración' de Java.