2009-08-26 23 views
7

Nasıl XMLGregorianCalendar 2 örneklerini bir fazla olan bulmaya karşılaştırılabilir? tarih değişkenlerin biri bir değerXMLGregorianCalendar Tarih karşılaştırma

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

ve diğer

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

cevap

12

Sen (CalendarComparable olan) hem GregorianCalendar onlara dönüştürmek ve bu karşılaştırabilirsiniz var. Takvim semantik compareTo() yöntemi açıkça tanımlanmıştır ve zaman dilimine bağımsız çalışması gerekir:

iki Calendar nesne ile temsil edilen zaman değerlerine (mili saniye dönemi ile ilgili ofsetleri) karşılaştırır.

Yani bu deneyin: result pozitiftir

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

, o zaman date1 kendisi XMLGregorianCalendar üzerinde "daha sonra" date2

compare() yöntem daha ziyade garip bir şey yapar ve görünmüyor benim için çok yararlı.

+2

neden kullanmaz: date1.compare (örn gibi) (DATE2) == DatatypeConstants.LESSER? –

+0

http://stackoverflow.com/questions/14978328/how-to-compare-xmlgregoriancalendar-with-only-the-date-portion-day-month-year XMLGregorianCalendar DATE1 kullanma karşılaştırma – user77115

+0

nasıl performans derinlemesine girer. Karşılaştır (date2) bana mantıksal sonuçlar vermiyordu, yukarıdaki cevap doğru. –