Files
DEV/DEV.2.1/TP/TP4-ClassesetObjet/Lendemain.java

58 lines
1.6 KiB
Java
Raw Normal View History

2025-02-04 12:17:28 +01:00
public class Lendemain {
private int annee;
private int mois;
private int jour;
2025-02-04 14:59:18 +01:00
private static int[] JOURS_PAR_MOIS = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
2025-02-04 12:17:28 +01:00
public Lendemain(int annee, int mois, int jour) {
this.annee = annee;
this.mois = mois;
this.jour = jour;
}
public String toString() {
return String.format("%04d-%02d-%02d", annee, mois, jour);
}
public Lendemain lendemain() {
int newJour = this.jour + 1;
int newMois = this.mois;
int newAnnee = this.annee;
2025-02-04 14:59:18 +01:00
if (newJour > JOURS_PAR_MOIS[this.mois - 1]) {
2025-02-04 12:17:28 +01:00
newJour = 1;
newMois++;
2025-02-04 14:59:18 +01:00
if (newMois > 12) {
2025-02-04 12:17:28 +01:00
newMois = 1;
newAnnee++;
}
}
return new Lendemain(newAnnee, newMois, newJour);
}
2025-02-04 14:59:18 +01:00
2025-02-04 12:17:28 +01:00
public int compare(Lendemain autre) {
if (this.annee != autre.annee) {
return Integer.compare(this.annee, autre.annee);
}
if (this.mois != autre.mois) {
return Integer.compare(this.mois, autre.mois);
}
return Integer.compare(this.jour, autre.jour);
}
public static void main(String[] args) {
Lendemain date = new Lendemain(2024, 2, 28);
Lendemain lendemain = date.lendemain();
2025-02-04 14:59:18 +01:00
System.out.println("Date actuelle : " + date);
System.out.println("Lendemain : " + lendemain);
2025-02-04 12:17:28 +01:00
2025-02-04 14:59:18 +01:00
//test
2025-02-04 12:17:28 +01:00
Lendemain autreDate = new Lendemain(2024, 3, 1);
2025-02-04 14:59:18 +01:00
System.out.println("Comparaison : " + date.compare(autreDate));
2025-02-04 12:17:28 +01:00
}
}