Java LocalDate Data Atual

JavaBeginner
Pratique Agora

Introdução

A classe LocalDate do Java foi introduzida no Java 8 para representar uma data sem um fuso horário. Ela fornece vários métodos para realizar operações em objetos de data, como adicionar ou subtrair dias, meses e anos. Um desses métodos úteis é o método now(ZoneId), que retorna a data atual com base em um fuso horário especificado.

Criar um arquivo Java

Crie um novo arquivo Java chamado LocalDateNowZoneId.java no diretório ~/project.

cd ~/project
touch LocalDateNowZoneId.java

Importar os pacotes necessários

Para usar a classe LocalDate e a classe ZoneId, precisamos importar os pacotes java.time.LocalDate e java.time.ZoneId.

import java.time.LocalDate;
import java.time.ZoneId;

Obter a data atual com o fuso horário padrão do sistema

Para obter a data atual com o fuso horário padrão do sistema, podemos usar o método now() da classe LocalDate. Também usamos o método systemDefault() da classe ZoneId para obter o fuso horário padrão do sistema.

LocalDate localDate = LocalDate.now(ZoneId.systemDefault());
System.out.println("Current date with default system time-zone: " + localDate);

Obter a data atual com um fuso horário especificado

Se quisermos obter a data atual com um fuso horário especificado, podemos passar o fuso horário como um argumento para o método now(). Neste exemplo, passamos o fuso horário "Asia/Tokyo" para obter a data atual no fuso horário de Tóquio.

LocalDate localDate = LocalDate.now(ZoneId.of("Asia/Tokyo"));
System.out.println("Current date in Tokyo time-zone: " + localDate);

Obter fusos horários disponíveis

Para exibir os fusos horários disponíveis, podemos usar o método getAvailableZoneIds() da classe ZoneId.

System.out.println("Available time-zones:");
ZoneId.getAvailableZoneIds().forEach(System.out::println);

Compilar e executar o código

Você pode compilar e executar o código usando os comandos javac e java no terminal.

javac LocalDateNowZoneId.java
java LocalDateNowZoneId

Resumo

Neste laboratório, aprendemos como usar o método now(ZoneId) da classe LocalDate em Java para obter a data atual do relógio do sistema no fuso horário especificado. Também aprendemos como obter os fusos horários disponíveis e como usar esses fusos horários em nosso código.