Also müssen wir für eine Zuweisung die JDK-Datums- oder Kalender-Objekte verwenden, um Daten in dem System zu repräsentieren, das wir entwerfen (sonst würde ich eine andere Bibliothek verwenden). Für eine Funktion muss ich sicherstellen, dass mindestens eine bestimmte Anzahl von Jahren seit dem Eingabedatum bis zum heutigen Datum vergangen ist. Ich schrieb die folgende Methode die Tage zwischen zwei Kalender-Objekten, um zu versuchen und zu berechnen:Tage zwischen zwei Datums- oder Kalender-Objekten in Java berechnen
public static int daysSince(Calendar pastDate) {
Calendar presentDate = Calendar.getInstance();
int daysSince = 0;
while (pastDate.before(presentDate)) {
pastDate.add(Calendar.DAY_OF_MONTH, 1);
daysSince++;
} return daysSince;
}
Dieses Verfahren ist jedoch immer genau 30 Tage weniger zurückzukehren scheint als die tatsächliche Anzahl der Tage zwischen den beiden Daten, und ich kann‘ t scheinen zu verstehen, warum? Zum Beispiel gibt es nur einen Tag zwischen dem 25.03.2016 und dem 25.04.2016. Was vermisse ich?
Sehen Sie diese http://stackoverflow.com/questions/1555262/calculating-the-difference-between-two-java-date-instances –