1. LocalDateTimeclase
La LocalDateTimeclase combina las capacidades de las clases LocalDatey 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 LocalDatey 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 LocalDatey 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 LocalDateclase. Luego están los parámetros que especifican el tiempo en los mismos formatos que en la LocalTimeclase. 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 LocalDatey LocalTime:
| Código |
|---|
|
| Salida de consola |
|
La LocalDateTimeclase tiene métodos para obtener elementos de una fecha y/u hora. Reflejan exactamente los métodos de las clases LocalDatey LocalTime. No los repetiremos aquí.
2. Instantclase
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 Instantclase es una versión simplificada de la Dateclase, conservando solo lo que necesitan los programadores.
Puede obtener un Instantobjeto exactamente de la misma manera que un LocalTimeobjeto:
Instant timestamp = Instant.now();
Where timestampes una Instantvariable 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 Instantobjetos
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 Instantobjeto 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