1
resposta

Cálculo da duração de um evento

Saudações!

Desde já, desculpo-me caso a dúvida que estou prestes a apresentar já tenha sido solucionada neste fórum.

Dúvida: Suponha que seja necessário calcular a duração de um determinado evento (horas:minutos), sabendo que esse evento pode ocorrer de um dia para o outro (por exemplo, começar às 23h e terminar às 02h). As entradas que temos são inteiros que especificam o início (hora de início:minuto de início) e o término (hora de término:minuto de término).

Como posso utilizar a classe LocalTime e/ou classes afins para solucionar este problema da forma mais simples possível?

Nas videoaulas, pude ver o instrutor realizar este mesmo cálculo utilizando datas (classe LocalDate). No entanto, após várias tentativas não consegui atingir o mesmo objetivo usando horas e minutos.

1 resposta

Oi Pedro, tudo bem?

É possível pegar o Duration entre dois LocalTime e a partir dele converter para segundos, horas...

LocalTime start = LocalTime.of(1, 20, 25, 1024);
LocalTime end = LocalTime.of(3, 22, 27, 1544);

Duration.between(start, end).getSeconds();