Objectifs
- Comprendre les bases de la classe
LocalDateTime. - Apprendre à créer et manipuler des objets
LocalDateTime. - Utiliser les méthodes pratiques pour les opérations courantes sur les dates et les heures.
- Apprendre à formater et à analyser les dates et les heures.
- Comprendre les bases de la classe
Introduction à
LocalDateTime- La classe LocalDateTime, introduite dans Java 8, fait partie de l'API java.time et est utilisée pour représenter une date et une heure sans information de fuseau horaire. Comme les autres classes de l'API de date et d'heure, LocalDateTime est immuable et thread-safe.
LocalDateTimeest utilisé pour représenter une combinaison de date et d'heure sans information de fuseau horaire. Cela inclut l'année, le mois, le jour, l'heure, la minute, la seconde et les nanosecondes.
Création de
LocalDateTime- Vous pouvez créer une instance de
LocalDateTimede plusieurs façons :-
Utilisation de la méthode
now()- Commençons par utiliser une méthode très utile, la méthode now():
import java.time.LocalDateTime; public class LocalDateTimeExample { public static void main(String[] args) { LocalDateTime now = LocalDateTime.now(); System.out.println("Current DateTime: " + now); } }
- Commençons par utiliser une méthode très utile, la méthode now():
-
Utilisation de la méthode
of()import java.time.LocalDateTime; public class LocalDateTimeExample { public static void main(String[] args) { LocalDateTime specificDateTime = LocalDateTime.of(2024, 6, 7, 14, 30, 15); System.out.println("Specific DateTime: " + specificDateTime); } } Utilisation de la méthode
parse()import java.time.LocalDateTime; public class LocalDateTimeExample { public static void main(String[] args) { LocalDateTime parsedDateTime = LocalDateTime.parse("2024-06-07T14:30:15"); System.out.println("Parsed DateTime: " + parsedDateTime); } }
-
- Vous pouvez créer une instance de
Manipulation des Dates et des Heures
- LocalDateTime fournit diverses méthodes pour manipuler les dates et les heures, comme ajouter ou soustraire des jours, des mois, des années, des heures, des minutes, etc.
-
Ajouter ou Soustraire des Jours, Mois, Années, Heures, Minutes, Secondes
import java.time.LocalDateTime; public class LocalDateTimeExample { public static void main(String[] args) { LocalDateTime now = LocalDateTime.now(); LocalDateTime plusDays = now.plusDays(5); LocalDateTime minusMonths = now.minusMonths(2); LocalDateTime plusYears = now.plusYears(1); LocalDateTime plusHours = now.plusHours(3); LocalDateTime minusMinutes = now.minusMinutes(30); System.out.println("Current DateTime: " + now); System.out.println("Plus 5 Days: " + plusDays); System.out.println("Minus 2 Months: " + minusMonths); System.out.println("Plus 1 Year: " + plusYears); System.out.println("Plus 3 Hours: " + plusHours); System.out.println("Minus 30 Minutes: " + minusMinutes); } }
-
Comparaison des Dates et des Heures
- Vous pouvez comparer des dates et des heures en utilisant des méthodes telles que
isBefore(),isAfter(), etisEqual().import java.time.LocalDateTime; public class LocalDateTimeExample { public static void main(String[] args) { LocalDateTime dateTime1 = LocalDateTime.of(2024, 6, 7, 14, 30); LocalDateTime dateTime2 = LocalDateTime.of(2024, 6, 7, 16, 45); System.out.println("DateTime1 is before DateTime2: " + dateTime1.isBefore(dateTime2)); System.out.println("DateTime1 is after DateTime2: " + dateTime1.isAfter(dateTime2)); System.out.println("DateTime1 is equal to DateTime2: " + dateTime1.isEqual(dateTime2)); } }
- Vous pouvez comparer des dates et des heures en utilisant des méthodes telles que
Formatage et Analyse des Dates et des Heures
- LocalDateTime peut être formaté et analysé à l'aide de la classe DateTimeFormatter.
Formatage de LocalDateTime
import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class LocalDateTimeExample { public static void main(String[] args) { LocalDateTime now = LocalDateTime.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); String formattedDateTime = now.format(formatter); System.out.println("Formatted DateTime: " + formattedDateTime); } }Analyse de LocalDateTime
import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class LocalDateTimeExample { public static void main(String[] args) { String dateTimeString = "07-06-2024 14:30:15"; DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); LocalDateTime parsedDateTime = LocalDateTime.parse(dateTimeString, formatter); System.out.println("Parsed DateTime: " + parsedDateTime); } }
-
Exemples Pratiques
- Calculer la Durée entre Deux Dates et Heures
import java.time.Duration; import java.time.LocalDateTime; public class LocalDateTimeExample { public static void main(String[] args) { LocalDateTime startDateTime = LocalDateTime.of(2024, 6, 7, 9, 0); LocalDateTime endDateTime = LocalDateTime.of(2024, 6, 7, 17, 0); Duration duration = Duration.between(startDateTime, endDateTime); System.out.println("Duration: " + duration.toHours() + " hours"); } }import java.time.LocalDateTime; public class LocalDateTimeExample { public static void main(String[] args) { LocalDateTime currentDateTime = LocalDateTime.now(); LocalDateTime startDateTime = LocalDateTime.of(2024, 6, 7, 9, 0); LocalDateTime endDateTime = LocalDateTime.of(2024, 6, 7, 17, 0); boolean isWithinRange = !currentDateTime.isBefore(startDateTime) && !currentDateTime.isAfter(endDateTime); System.out.println("Current DateTime is within range: " + isWithinRange); } }
- Calculer la Durée entre Deux Dates et Heures