1. LocalTime
aula
A LocalTime
classe foi criada para casos onde você precisa trabalhar com horário mas sem data. Por exemplo, suponha que você esteja escrevendo um aplicativo de despertador. Você se importa com a hora, mas não com a data.
A LocalTime
classe é muito semelhante à LocalDate
classe — seus objetos também não podem ser alterados após a criação.
Obtendo a hora atual
Para criar um novo LocalTime
objeto, você precisa usar o now()
método estático. Exemplo:
LocalTime time = LocalTime.now();
Onde time
é uma LocalTime
variável e é uma chamada para o método estático da classe.LocalTime.now()
now()
LocalTime
Exemplo:
Código | Saída do console |
---|---|
|
|
O ponto é seguido pelo número atual de nanossegundos.
2. Conseguir um horário específico
Para obter um horário específico, você precisa usar o of()
método estático. Exemplo:
LocalTime time = LocalTime.of(hours, minutes, seconds, nanoseconds);
Você passa nas horas, minutos, segundos e nanossegundos.
Exemplo:
Código | Saída do console |
---|---|
|
|
A propósito, existem mais duas variações desse método:
LocalTime time = LocalTime.of(hours, minutes, seconds);
e
LocalTime time = LocalTime.of(hours, minutes);
Assim você pode usar o que for mais conveniente para você.
Obtendo um tempo baseado no índice de um segundo
Você também pode obter o tempo pelo índice de um segundo em um dia. Para fazer isso, temos o ofSecondOfDay()
método estático:
LocalTime time = LocalTime.ofSecondOfDay(seconds);
Onde segundos é o número de segundos desde o início do dia.
Exemplo:
Código | Saída do console |
---|---|
|
|
Sim, 10.000 segundos é um pouco menos de três horas. Está tudo correto.
3. Obtendo elementos de tempo
Para obter o valor de um elemento específico de tempo de um LocalTime
objeto, temos estes métodos:
Método | Descrição |
---|---|
|
Retorna as horas |
|
Retorna os minutos |
|
Retorna os segundos |
|
Retorna os nanossegundos |
Exemplo:
Código | Saída do console |
---|---|
|
|
4. Alterar a hora em um LocalTime
objeto
A LocalTime
classe também possui métodos que permitem trabalhar com o tempo. A implementação desses métodos é análoga aos métodos da LocalDate
classe: eles não alteram o LocalTime
objeto existente, mas retornam um novo com os dados desejados.
Aqui estão os métodos da LocalTime
classe:
Método | Descrição |
---|---|
|
Adiciona horas |
|
Adiciona minutos |
|
Adiciona segundos |
|
Adiciona nanossegundos |
|
Subtrai horas |
|
Subtrai minutos |
|
Subtrai segundos |
|
Subtrai nanossegundos |
Exemplo:
Código | Saída do console |
---|---|
|
|
Observe que, em cada caso, obtemos um novo tempo relativo ao time
objeto original. Se você adicionar 3600 seconds
a um tempo, adicionará exatamente 1hour
.
GO TO FULL VERSION