Nach einigen "Empfehlungen", Datumswerte in Strings umzuwandeln und dann mit Stringoperationen zu vergleichen, habe ich eine wesentlich einfachere Möglichkeit mit ".compareTo" für Date-Werte gefunden.
Zum Hintergrund: Ich setze eine Variable "validUntil" vom Typ Date, nachdem eine bestimmte Bedinungen eingetreten ist, indem ich auf den aktuellen Zeitpunkt z.B. 10 Minuten draufrechne. Danach überprüfe ich in einem Thread, ob der Zeitpunkt "validUntil" schon eingetreten bzw. vorbei ist.
Die Variable "i" enthält
- < 0 wenn der Zeitpunkt noch nicht vorrüber ist,
- = 0 wenn der Zeitpunkt gerade aktuell ist,
- > 0 wenn der Zeitpunkt bereits vorrüber ist.
public boolean isStillValid() {
// Setting "now".
Calendar cal = Calendar.getInstance();
cal.setTime(new Date());
Date now = cal.getTime();
int i = now.compareTo(validUntil);
if (i > 0) {
// TimeOut has expired.
return false;
} else {
// TimeOut is still valid.
return true;
}
Schreibe den ersten Kommentar