2016-05-11 5 views
1

Ich verwende die folgende Methode, um einen UTC-Zeitstempel zu generieren und möchte ihn mit einem anderen vergleichen. Ich verwende dafür die Apache Commons Lang-Bibliothek.Wie zwei utc Zeitstempel in Java zu vergleichen?

Wie kann ich die beiden Zeitstempel vergleichen und bestimmen, welcher größer ist?

String msgPushedTimestamp = 2016-05-11T19:50:17.141Z 
String logFileTimestamp = 2016-05-11T14:52:02.970Z 

So erzeuge ich den Zeitstempel mit der Apache Commons Lang-Bibliothek.

+0

http://stackoverflow.com/questions/18915075/java-convert-string-to-timestamp –

Antwort

3

Sie können sie als Strings vergleichen, da Ihr Datumsformat (ISO 8601) lexikographisch vergleichbar ist.

int compare = msgPushedTimestamp.compareTo(logFileTimestamp); 
if (compare < 0) { 
    // msgPushedTimestamp is earlier 
} else if (compare > 0) { 
    // logFileTimestamp is earlier 
} else { 
    // they are equal 
} 
+0

Perfekt! Danke vielmals. – user2325154

1

Wenn die Klasse eine vergleichbare Schnittstelle implementiert, können Sie die compareTo-Methode von Core Java verwenden. Funktioniert mit dem Zeitstempel in String type, da dies der Fall ist.

+0

Ich benutze eigentlich einen JUnit-Test. Kann Junit tatsächlich eine vergleichbare Schnittstelle implementieren? – user2325154

+0

Nicht auf diesem einen versucht. Aber ich habe vorher Schnittstellen und JUnit benutzt und sie haben gut funktioniert. – user3207158