【发布时间】:2009-08-26 10:15:42
【问题描述】:
如何比较 XMLGregorianCalendar 的 2 个实例以找出哪个更大? 其中一个日期变量有一个值
date1 = 2009-02-23T05:54:17+05:30
另一个,
date2 = 2009-02-23T05:54:17.000
【问题讨论】:
如何比较 XMLGregorianCalendar 的 2 个实例以找出哪个更大? 其中一个日期变量有一个值
date1 = 2009-02-23T05:54:17+05:30
另一个,
date2 = 2009-02-23T05:54:17.000
【问题讨论】:
您可以将它们都转换为 GregorianCalendar 并比较它们(Calendar 是 Comparable)。 Calendar 的语义 compareTo() 方法是明确定义的,并且应该独立于时区工作:
比较时间值(毫秒 纪元的偏移量)表示为 两个日历对象。
所以试试这个:
XMLGregorianCalendar date1 = ...
XMLGregorianCalendar date2 = ...
int result = date1.toGregorianCalendar().compareTo(date2.toGregorianCalendar());
如果result 为正,则date1 比date2“晚”
XMLGregorianCalendar 上的 compare() 方法本身做了一些相当奇怪的事情,对我来说看起来不是很有用。
【讨论】: