Récupérer la Valeur d’une Unité Temporelle en Java
Sommaire
- 1- Objectifs
- 2- Introduction aux Méthodes Getter
- 3- Méthodes Getter pour LocalDate
- 4- Méthodes Getter pour LocalTime
- 5- Méthodes Getter pour LocalDateTime
- 6- Méthodes Getter pour Period
- 7- Méthodes Getter pour Duration
- 8- Exemples Pratiques
- 8.1- Exemple 1 : Calculer l'Âge en Années, Mois et Jours
- 8.2- Exemple 2 : Afficher le Temps Restant Avant une Échéance
- 8.2.1- Cours JAVA
Récupérer la Valeur d’une Unité Temporelle en Java
-
Objectifs
- Comprendre les méthodes getter des classes LocalDate, LocalTime, LocalDateTime, Period et Duration.
- Apprendre à utiliser ces méthodes pour récupérer des valeurs spécifiques de dates, d’heures, de périodes et de durées.
-
Introduction aux Méthodes Getter
- En Java, les classes de l’API java.time fournissent diverses méthodes getter pour récupérer des valeurs spécifiques d’une date, d’une heure, d’une période ou d’une durée. Ces méthodes commencent par « get » suivi du nom de l’unité temporelle recherchée, comme
getYear()
,getMonth()
,getDayOfMonth()
,getHour()
, etc. - Les méthodes getter permettent d’extraire des informations spécifiques à partir des objets de date, d’heure, de période et de durée. Voici une liste non exhaustive des méthodes getter disponibles dans l’API java.time.
-
Méthodes Getter pour LocalDate
- La classe LocalDate représente une date sans information de temps. Les méthodes getter couramment utilisées incluent :
-
Méthodes Getter pour LocalTime
- La classe LocalTime représente une heure sans information de date. Les méthodes getter couramment utilisées incluent :
-
Méthodes Getter pour LocalDateTime
- La classe LocalDateTime combine une date et une heure. Les méthodes getter couramment utilisées incluent :
-
Méthodes Getter pour Period
- La classe Period représente une période de temps en années, mois et jours. Les méthodes getter couramment utilisées incluent :
-
Méthodes Getter pour Duration
- La classe Duration représente une durée en secondes et nanosecondes. Les méthodes getter couramment utilisées incluent :
-
Exemples Pratiques
-
Exemple 1 : Calculer l’Âge en Années, Mois et Jours
-
Exemple 2 : Afficher le Temps Restant Avant une Échéance
getYear()
getMonth()
getMonthValue()
getDayOfMonth()
getDayOfYear()
getDayOfWeek()
import java.time.LocalDate;
import java.time.Month;
import java.time.DayOfWeek;
public class LocalDateExample {
public static void main(String[] args) {
LocalDate date = LocalDate.of(2024, Month.JUNE, 7);
int year = date.getYear();
Month month = date.getMonth();
int monthValue = date.getMonthValue();
int dayOfMonth = date.getDayOfMonth();
int dayOfYear = date.getDayOfYear();
DayOfWeek dayOfWeek = date.getDayOfWeek();
System.out.println("Year: " + year);
System.out.println("Month: " + month);
System.out.println("Month Value: " + monthValue);
System.out.println("Day of Month: " + dayOfMonth);
System.out.println("Day of Year: " + dayOfYear);
System.out.println("Day of Week: " + dayOfWeek);
}
}
getHour()
getMinute()
getSecond()
getNano()
import java.time.LocalTime;
public class LocalTimeExample {
public static void main(String[] args) {
LocalTime time = LocalTime.of(14, 30, 15, 123456789);
int hour = time.getHour();
int minute = time.getMinute();
int second = time.getSecond();
int nano = time.getNano();
System.out.println("Hour: " + hour);
System.out.println("Minute: " + minute);
System.out.println("Second: " + second);
System.out.println("Nano: " + nano);
}
}
getYear()
getMonth()
getMonthValue()
getDayOfMonth()
getDayOfYear()
getDayOfWeek()
getHour()
getMinute()
getSecond()
getNano()
import java.time.LocalDateTime;
import java.time.Month;
import java.time.DayOfWeek;
public class LocalDateTimeExample {
public static void main(String[] args) {
LocalDateTime dateTime = LocalDateTime.of(2024, Month.JUNE, 7, 14, 30, 15, 123456789);
int year = dateTime.getYear();
Month month = dateTime.getMonth();
int monthValue = dateTime.getMonthValue();
int dayOfMonth = dateTime.getDayOfMonth();
int dayOfYear = dateTime.getDayOfYear();
DayOfWeek dayOfWeek = dateTime.getDayOfWeek();
int hour = dateTime.getHour();
int minute = dateTime.getMinute();
int second = dateTime.getSecond();
int nano = dateTime.getNano();
System.out.println("Year: " + year);
System.out.println("Month: " + month);
System.out.println("Month Value: " + monthValue);
System.out.println("Day of Month: " + dayOfMonth);
System.out.println("Day of Year: " + dayOfYear);
System.out.println("Day of Week: " + dayOfWeek);
System.out.println("Hour: " + hour);
System.out.println("Minute: " + minute);
System.out.println("Second: " + second);
System.out.println("Nano: " + nano);
}
}
getYears()
getMonths()
getDays()
import java.time.Period;
public class PeriodExample {
public static void main(String[] args) {
Period period = Period.of(1, 6, 15);
int years = period.getYears();
int months = period.getMonths();
int days = period.getDays();
System.out.println("Years: " + years);
System.out.println("Months: " + months);
System.out.println("Days: " + days);
}
}
getSeconds()
getNano()
import java.time.Duration;
public class DurationExample {
public static void main(String[] args) {
Duration duration = Duration.ofSeconds(3605, 123456789);
long seconds = duration.getSeconds();
int nano = duration.getNano();
System.out.println("Seconds: " + seconds);
System.out.println("Nano: " + nano);
}
}
import java.time.LocalDate;
import java.time.Period;
public class AgeCalculator {
public static void main(String[] args) {
LocalDate birthDate = LocalDate.of(1990, 6, 7);
LocalDate currentDate = LocalDate.now();
Period age = Period.between(birthDate, currentDate);
int years = age.getYears();
int months = age.getMonths();
int days = age.getDays();
System.out.println("Age: " + years + " years, " + months + " months, and " + days + " days.");
}
}
import java.time.Duration;
import java.time.LocalDateTime;
public class CountdownTimer {
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();
LocalDateTime deadline = LocalDateTime.of(2024, 12, 31, 23, 59, 59);
Duration duration = Duration.between(now, deadline);
long hours = duration.toHours();
long minutes = duration.toMinutes() % 60;
long seconds = duration.getSeconds() % 60;
System.out.println("Time remaining: " + hours + " hours, " + minutes + " minutes, " + seconds + " seconds.");
}
}