Na programação Java, pode haver certas instâncias em que surge a necessidade de medir o tempo em segundos ou nanossegundos. Por exemplo, comparar e calcular a diferença de tempo entre vários intervalos de tempo ou retornar os minutos, segundos ou nanossegundos calculados. Nesses casos, o “ Classe de Duração ” em Java ajuda a trabalhar com funcionalidades relacionadas ao tempo de forma eficaz.
Este blog irá detalhar a aplicação da “Classe de Duração” em Java.
O que é classe de duração Java?
“ Duração ” é a classe baseada em valor presente na biblioteca de tempo Java usada para medir o tempo em segundos e nanossegundos. Além disso, essa classe é imutável e thread-safe.
Métodos de Duração Aula
A seguir estão alguns dos métodos importantes da classe Duration:
Métodos | Uso |
addTo(Temporal temporal) | É usado para adicionar essa duração ao objeto temporal específico. |
get(Unidade temporal) | É usado para buscar o valor unitário solicitado. |
abdômen() | Dá uma cópia positiva do comprimento. |
Duração entre(Temporal startInclusive, Temporal endExclusive) | Este método encontra a duração entre dois objetos (temporais). |
mais(Duração duração) | É aplicado para fornecer uma cópia desta duração com a duração adicionada fornecida. |
menos(Duração duração) | Este método é utilizado para fornecer uma cópia desta duração junto com a duração fornecida subtraída. |
getNano() | Ele busca os nanossegundos no segundo nesta duração. |
getSeconds() | Ele busca os segundos nesta duração. |
of(quantidade longa, unidade temporal) | Este método obtém uma Duração correspondente ao valor na unidade fornecida. |
ofSeconds (long seg) | Obtém uma Duração referente ao número de segundos. |
ofNanos (long in) | Obtém uma duração correspondente ao número de nanossegundos. |
ofMinutes(long min) | Obtém uma duração que significa o número de minutos. |
ofMillis (long millis) | Este método obtém uma Duration que representa milissegundos. |
ofHours(horas longas) | Obtém uma Duração referente às horas padrão/padrão. |
ofDays(dias longos) | Obtém uma Duração que indica o número de dias padrão/padrão de 24 horas. |
compareTo(Duração x) | Ele compara a duração fornecida com a duração fornecida. |
Duração entre (Temporal startIncl, Temporal endExcl) | Obtém uma Duração correspondente à duração entre dois objetos (temporais). |
parse(CharSequence text) | Este método busca uma duração de uma string de texto. |
de (quantidade temporal) | Ele busca a instância Duration via quantidade temporal. |
Agora, vamos aplicar alguns dos métodos de “Classe de Duração”.
Antes de prosseguir com os exemplos, importe o pacote fornecido abaixo para trabalhar com o “ Duração ' aula:
import java.time.Duration;
Exemplo 1: Aplicando os Métodos de Classe de Duração “between()”, “get()” e “isNegative()” em Java
Este exemplo aplica os métodos discutidos e retorna o resultado correspondente como booleano ou na forma de segundos computados:
classe pública Durationtime {public static void principal ( Corda [ ] argumentos ) {
Duração timeDiff1 = Duration.between ( LocalTime.MAX, LocalTime.NOON ) ;
System.out.println ( timeDiff1.isNegative ( ) ) ;
System.out.println ( timeDiff1.get ( ChronoUnit.SECONDS ) ) ;
Duração timeDiff2 = Duration.between ( LocalTime.NOON, LocalTime.MAX ) ;
System.out.println ( timeDiff2.isNegative ( ) ) ;
System.out.println ( timeDiff2.get ( ChronoUnit.SECONDS ) ) ;
} }
Nas linhas de código acima:
- Em primeiro lugar, aplique o “ entre() ” class(Duration) método para retornar a diferença de tempo entre os horários indicados.
- Observação: O ' máx. ' corresponde a ' 23:59:59.99 ' e a ' LocalTime.Noon ” indica “ 12:00 ”.
- Depois disso, associe o “ éNegativo() ” com a diferença calculada para analisar se a diferença de tempo é negativa retornando um resultado booleano.
- Além disso, aplique o “ pegar() ” para recuperar a diferença calculada.
- Agora, aplique o “ entre() ” novamente trocando os prazos e repetindo as abordagens discutidas para analisar os valores e retornar sua diferença.
Saída
Neste resultado, pode-se observar que as diferenças de tempo correspondentes são computadas e os valores negativos são avaliados de acordo.
Antes de ir para o próximo exemplo, certifique-se de importar o seguinte pacote adicional para trabalhar com a data e hora:
import java.time.temporal.ChronoUnit;
Exemplo 2: Aplicando a classe de duração “from()”, “getDuration()” e “toMinutes()”
Neste exemplo, os métodos discutidos podem ser implementados para buscar a duração em horas e recuperá-la em minutos:
classe pública Durationtime2 {public static void principal ( Corda [ ] argumentos ) {
Duração dur = Duração.de ( ChronoUnit.HOURS.getDuration ( ) ) ;
System.out.println ( 'A duração em minutos é -> ' +dur.toMinutos ( ) ) ;
} }
Neste bloco de código, aplique o combinado “ de() ' e ' getDuration() ” para buscar a duração em horas. Depois disso, associe o “ toMinutes() ” para retornar a duração em minutos.
Saída
Na saída acima, pode-se ver que os minutos correspondentes em uma hora são recuperados apropriadamente.
Conclusão
“ Duração ” é a classe baseada em valor na biblioteca de tempo Java usada para medir o tempo em segundos e nanossegundos. Além disso, pode ser invocado usando outras unidades baseadas em duração, ou seja, “minutos” e “horas”. Essa classe pode ser usada para calcular as diferenças de tempo entre os intervalos de tempo ou retornar a duração em um formato específico, ou seja, “ minutos ”. Este artigo demonstrou a utilização do Java “Duration Class”.