Date actuelle avec Java LocalDate

JavaBeginner
Pratiquer maintenant

Introduction

La classe Java LocalDate a été introduite dans Java 8 pour représenter une date sans fuseau horaire. Elle fournit diverses méthodes pour effectuer des opérations sur des objets de date telles que l'ajout ou la soustraction de jours, de mois et d'années. L'une de ces méthodes utiles est la méthode now(ZoneId) qui renvoie la date actuelle en fonction d'un fuseau horaire spécifié.

Créer un fichier Java

Créez un nouveau fichier Java nommé LocalDateNowZoneId.java dans le répertoire ~/project.

cd ~/project
touch LocalDateNowZoneId.java

Importer les packages requis

Pour utiliser la classe LocalDate et la classe ZoneId, nous devons importer les packages java.time.LocalDate et java.time.ZoneId.

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

Obtenir la date actuelle avec le fuseau horaire système par défaut

Pour obtenir la date actuelle avec le fuseau horaire système par défaut, nous pouvons utiliser la méthode now() de la classe LocalDate. Nous utilisons également la méthode systemDefault() de ZoneId pour obtenir le fuseau horaire système par défaut.

LocalDate localDate = LocalDate.now(ZoneId.systemDefault());
System.out.println("Date actuelle avec le fuseau horaire système par défaut : " + localDate);

Obtenir la date actuelle avec un fuseau horaire spécifié

Si nous voulons obtenir la date actuelle avec un fuseau horaire spécifié, nous pouvons passer le fuseau horaire en tant qu'argument à la méthode now(). Dans cet exemple, nous passons le fuseau horaire "Asia/Tokyo" pour obtenir la date actuelle dans le fuseau horaire de Tokyo.

LocalDate localDate = LocalDate.now(ZoneId.of("Asia/Tokyo"));
System.out.println("Date actuelle dans le fuseau horaire de Tokyo : " + localDate);

Obtenir les fuseaux horaires disponibles

Pour afficher les fuseaux horaires disponibles, nous pouvons utiliser la méthode getAvailableZoneIds() de la classe ZoneId.

System.out.println("Fuseaux horaires disponibles :");
ZoneId.getAvailableZoneIds().forEach(System.out::println);

Compiler et exécuter le code

Vous pouvez compiler et exécuter le code à l'aide des commandes javac et java dans le terminal.

javac LocalDateNowZoneId.java
java LocalDateNowZoneId

Résumé

Dans ce laboratoire, nous avons appris à utiliser la méthode now(ZoneId) de la classe Java LocalDate pour obtenir la date actuelle à partir de l'horloge système dans le fuseau horaire spécifié. Nous avons également appris à obtenir les fuseaux horaires disponibles et à les utiliser dans notre code.