1. LocalTime
clase
La LocalTime
clase fue creada para casos en los que se necesita trabajar con tiempo pero sin fecha. Por ejemplo, suponga que está escribiendo una aplicación de despertador. Te importa la hora, pero no la fecha.
La LocalTime
clase es muy similar a la LocalDate
clase: sus objetos tampoco se pueden cambiar después de la creación.
Obtener la hora actual
Para crear un nuevo LocalTime
objeto, debe usar el now()
método estático. Ejemplo:
LocalTime time = LocalTime.now();
Where time
es una LocalTime
variable y es una llamada al método estático de la clase.LocalTime.now()
now()
LocalTime
Ejemplo:
Código | Salida de consola |
---|---|
|
|
El punto va seguido del número actual de nanosegundos.
2. Obtener un tiempo específico
Para obtener un tiempo específico, debe usar el of()
método estático. Ejemplo:
LocalTime time = LocalTime.of(hours, minutes, seconds, nanoseconds);
Pasas en las horas, minutos, segundos y nanosegundos.
Ejemplo:
Código | Salida de consola |
---|---|
|
|
Por cierto, hay dos variaciones más de este método:
LocalTime time = LocalTime.of(hours, minutes, seconds);
y
LocalTime time = LocalTime.of(hours, minutes);
Así que puedes usar el que más te convenga.
Obtener un tiempo basado en el índice de un segundo
También puede obtener el tiempo por el índice de un segundo en un día. Para ello, tenemos el ofSecondOfDay()
método estático:
LocalTime time = LocalTime.ofSecondOfDay(seconds);
Donde segundos es el número de segundos desde el comienzo del día.
Ejemplo:
Código | Salida de consola |
---|---|
|
|
Sí, 10.000 segundos es un poco menos de tres horas. Está todo correcto.
3. Obtención de elementos de tiempo
Para obtener el valor de un elemento de tiempo específico de un LocalTime
objeto, tenemos estos métodos:
Método | Descripción |
---|---|
|
Devuelve las horas |
|
Devuelve los minutos |
|
Devuelve los segundos |
|
Devuelve los nanosegundos |
Ejemplo:
Código | Salida de consola |
---|---|
|
|
4. Cambiar la hora en un LocalTime
objeto
La LocalTime
clase también tiene métodos que te permiten trabajar con el tiempo. La implementación de estos métodos es análoga a los métodos de la LocalDate
clase: no cambian el LocalTime
objeto existente, sino que devuelven uno nuevo con los datos deseados.
Estos son los métodos de la LocalTime
clase:
Método | Descripción |
---|---|
|
Agrega horas |
|
Agrega minutos |
|
Agrega segundos |
|
Agrega nanosegundos |
|
Resta horas |
|
Resta minutos |
|
Resta segundos |
|
Resta nanosegundos |
Ejemplo:
Código | Salida de consola |
---|---|
|
|
Tenga en cuenta que en cada caso obtenemos un nuevo tiempo relativo al time
objeto original. Si agrega 3600 seconds
a un tiempo, entonces agrega exactamente 1hour
.