Java Time
LocalDateTime
Java Time LocalDateTime
LocalDateTime é usada para representar uma combinação de data e hora. Essa é a classe mais usada quando precisamos de uma combinação de data e hora.
Instanciação
//2023-06-25T16:25 -> data e hora sem segundo
LocalDateTime dataHora = LocalDateTime.of(2023,6,25, 16,25);
//2023-06-25T16:25:33 -> data e hora com segundo
dataHora = LocalDateTime.of(2023,6,25, 16,25,33);
Manipulação
LocalDateTime dataHora = LocalDateTime.of(2023,6,25, 16,25);
LocalDateTime proximoMes = dataHora.plusMonths(1);
LocalDateTime dataHoraComMenos15Minutos = dataHora.minusMinutes(15);
LocalDateTime dataHoraDefinindoSegundoZero = dataHora.withSecond(33);
Comparação
LocalDateTime dataHora1 = LocalDateTime.of(2023,6,25, 16,25);
LocalDateTime dataHora2 = LocalDateTime.of(2023,6,25, 16,25,17);
// comparando dois objetos data/hora em sua totalidade
boolean dataHoraIgual = dataHora1.equals(dataHora2); //false
//comparando dígito específico de uma data e hora
boolean dataHoraDigitoIgual = dataHora1.getDayOfMonth()==dataHora2.getDayOfMonth(); //true
Formatação
LocalDateTime dataHora = LocalDateTime.of(2023,7,22,17,33);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yy HH:mm:ss");
String dataHoraFormatada = dataHora.format(formatter);
System.out.println(dataHoraFormatada); // 22/07/23 17:33:00
Encerramento
Para os demais conteúdos, disponibilizamos este vídeo de encerramento explorando conceitualmente sobre Instant
, Period
, Duration
.
Java Time Encerramento