如何在Java中比较两个utc时间戳?

如何在Java中比较两个utc时间戳?,java,timestamp,utc,Java,Timestamp,Utc,我正在使用下面的方法生成UTC时间戳,并希望将其与其他方法进行比较。我正在为此使用ApacheCommonsLang库 如何比较这两个时间戳并确定哪个时间戳更大 String msgPushedTimestamp = 2016-05-11T19:50:17.141Z String logFileTimestamp = 2016-05-11T14:52:02.970Z 这就是我使用ApacheCommonsLang库生成时间戳的方式 String msgPushedTimestamp = Fas

我正在使用下面的方法生成UTC时间戳,并希望将其与其他方法进行比较。我正在为此使用ApacheCommonsLang库

如何比较这两个时间戳并确定哪个时间戳更大

String msgPushedTimestamp = 2016-05-11T19:50:17.141Z
String logFileTimestamp = 2016-05-11T14:52:02.970Z
这就是我使用ApacheCommonsLang库生成时间戳的方式

String msgPushedTimestamp = FastDateFormat.getInstance("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", TimeZone.getTimeZone("UTC")).format(System.currentTimeMillis());

让类实现Comparable接口,您可以使用核心Java的compareTo方法。使用字符串类型的时间戳,因为这是您的情况

您可以将它们作为字符串进行比较,因为您的日期格式()在字典上是可比较的

int compare = msgPushedTimestamp.compareTo(logFileTimestamp);
if (compare < 0) {
    // msgPushedTimestamp is earlier
} else if (compare > 0) {
    // logFileTimestamp is earlier
} else {
    // they are equal
}
int compare=msgPushedTimestamp.compareTo(logFileTimestamp);
如果(比较<0){
//msgPushedTimestamp更早
}否则如果(比较>0){
//logFileTimestamp更早
}否则{
//他们是平等的
}

我实际上在使用Junit测试。Junit真的可以实现类似的接口吗?在这个接口上没有尝试过。但我以前使用过接口和JUnit,它们工作得很好。太好了!非常感谢。