1. LocalDateTime
clase
La LocalDateTime
clase combina las capacidades de las clases LocalDate
y LocalTime
: almacena tanto una fecha como una hora. Sus objetos también son inmutables y sus métodos son similares a los de las clases LocalDate
y LocalTime
.
Obtener la fecha y hora actual
Aquí todo es como cabría esperar: usamos el now()
método. Ejemplo:
Código | Salida de consola |
---|---|
|
|
Cuando se muestra en la pantalla, la fecha y la hora están separadas por la letra T
.
Obtener una fecha y hora específicas
Como era de esperar, todo es similar a las clases LocalDate
y LocalTime
: usamos el of()
método:
... = LocalDateTime.of(year, month, day, hours, minutes, seconds);
Primero, hay parámetros que especifican la fecha en los mismos formatos que en la LocalDate
clase. Luego están los parámetros que especifican el tiempo en los mismos formatos que en la LocalTime
clase. of()
A continuación se proporciona una lista de todas las variaciones del método:
Métodos |
---|
|
|
|
|
|
|
|
Puede establecer la fecha directamente o establecerla indirectamente a través de objetos LocalDate
y LocalTime
:
Código |
---|
|
Salida de consola |
|
La LocalDateTime
clase tiene métodos para obtener elementos de una fecha y/u hora. Reflejan exactamente los métodos de las clases LocalDate
y LocalTime
. No los repetiremos aquí.
2. Instant
clase
Los creadores de Java tampoco se han olvidado de las formas de la vieja escuela.
La API de fecha y hora incluye una clase instantánea para trabajar con la hora destinada a los procesos que ocurren en las computadoras. En lugar de horas, minutos y segundos, se trata de segundos, milisegundos y nanosegundos.
Esta clase tiene dos campos que representan:
- el número de segundos que han transcurrido desde el 1 de enero de 1970
- un número de nanosegundos
¿La clase fue hecha para desarrolladores? Sí. Es por eso que calcula el tiempo en tiempo Unix, que comienza a principios de 1970.
Incluso se podría decir que la Instant
clase es una versión simplificada de la Date
clase, conservando solo lo que necesitan los programadores.
Puede obtener un Instant
objeto exactamente de la misma manera que un LocalTime
objeto:
Instant timestamp = Instant.now();
Where timestamp
es una Instant
variable y es una llamada al método estático de la clase.Instant.now()
now()
Instant
Ejemplo:
Código | Salida de consola |
---|---|
|
|
También puede crear un nuevo objeto usando variaciones del of()
método pasando el tiempo transcurrido desde el 1 de enero de 1970:
|
Necesitas pasar el número de milisegundos |
|
Necesitas pasar la cantidad de segundos. |
|
Necesitas pasar los segundos y nanosegundos |
Métodos disponibles en Instant
objetos
La clase Instant tiene dos métodos que devuelven los valores de sus campos:
|
Número de segundos que han transcurrido desde el 1 de enero de 1970 |
|
Nanosegundos. |
|
Número de milisegundos que han transcurrido desde el 1 de enero de 1970 |
También hay métodos para crear un nuevo Instant
objeto basado en uno existente:
|
Añade segundos a la hora actual |
|
Agrega milisegundos |
|
Agrega nanosegundos |
|
Resta segundos |
|
Resta milisegundos |
|
Resta nanosegundos |
Ejemplos:
Código | Salida de consola |
---|---|
|
|
GO TO FULL VERSION