XMLGregorianCalendar日期比较

时间:2009-08-26 10:15:43

标签: java xml

如何比较XMLGregorianCalendar的2个实例以找出哪个更大?  其中一个日期变量的值为

date1 = 2009-02-23T05:54:17+05:30

和另一个,

date2 = 2009-02-23T05:54:17.000

1 个答案:

答案 0 :(得分:16)

您可以将它们转换为GregorianCalendar并比较它们(CalendarComparable)。 Calendar的语义compareTo()方法是明确定义的,应该独立于时区工作:

  

比较时间值(毫秒   来自Epoch的偏移量)   两个日历对象。

所以试试这个:

XMLGregorianCalendar date1 = ...
XMLGregorianCalendar date2 = ...
int result = date1.toGregorianCalendar().compareTo(date2.toGregorianCalendar());

如果result为肯定,那么date1比“{1}}”更晚“

date2上的compare()方法本身做了一些非常特殊的事情,对我来说看起来并不是很有用。