java calculate delta time

java calculate delta time

Para calcular a diferença entre duas datas ou horários em Java, você pode usar a classe Duration da biblioteca java.time. A classe Duration representa um período de tempo em unidades de segundos e nanossegundos e pode ser usada para calcular a diferença entre duas instâncias de Temporal (como LocalDateTime ou Instant).

Aqui está um exemplo de como calcular a diferença entre duas datas usando a classe Duration:

r‮efe‬r to:lautturi.com
import java.time.Duration;
import java.time.LocalDate;

public class Main {
  public static void main(String[] args) {
    // Define duas datas
    LocalDate data1 = LocalDate.of(2020, 1, 1);
    LocalDate data2 = LocalDate.of(2021, 1, 1);

    // Calcula a diferença entre as duas datas
    Duration delta = Duration.between(data1, data2);

    // Imprime a diferença em dias
    System.out.println(delta.toDays());  // Imprime: 365
  }
}

Este código cria duas instâncias da classe LocalDate representando as datas 1 de janeiro de 2020 e 1 de janeiro de 2021, respectivamente. Em seguida, usa o método estático between da classe Duration para calcular a diferença entre as duas datas e armazena o resultado em uma variável delta. Por fim, imprime a diferença em dias usando o método toDays.

Você também pode calcular a diferença entre duas horas usando a classe Duration, basta substituir as instâncias de LocalDate por instâncias de LocalTime ou LocalDateTime. Por exemplo:

import java.time.Duration;
import java.time.LocalTime;

public class Main {
  public static void main(String[] args) {
    // Define duas horas
    LocalTime hora1 = LocalTime.of(12, 0);
    LocalTime hora2 = LocalTime.of(14, 0);

    // Calcula a diferença entre as duas horas
    Duration delta = Duration.between(hora1, hora2);

    // Imprime a diferença em minutos
    System.out.println(delta.toMinutes());  // Im
Created Time:2017-11-03 00:14:47  Author:lautturi