SORU
17 EYLÜL 2009, PERŞEMBE


Nasıl iki Tarih saat bölümü olmadan karşılaştırmak için?

Bir java saat kısmını yok sayan compareTo yöntemi istiyorum.açıklama.Tarih. Bunu çözmek için bir kaç yolu vardır sanırım. En basit yolu nedir?

CEVAP
17 EYLÜL 2009, PERŞEMBE


Benim tercihim bu inanılmaz derecede kolay Joda Time kullanmak için:

DateTime first = ...;
DateTime second = ...;

LocalDate firstDate = first.toLocalDate();
LocalDate secondDate = second.toLocalDate();

return firstDate.compareTo(secondDate);

EDİT: yorumlarda da belirtildiği Gibi, hatta daha basit. DateTimeComparator.getDateOnlyInstance() kullanırsanız :)

// TODO: consider extracting the comparator to a field.
return DateTimeComparator.getDateOnlyInstance().compare(first, second);

("Joda Time" java.util.Date java.util.Calendar sor. sorular neredeyse tüm temelidir kullanın İyice üstün bir API. Yapıyoruzhiçbir şeytarihler/saatler önemli, gerçekten varsa eğer yapabilirseniz, onu kullanman gerekir.)

KesinliklezorlaAPI inşa kullanmak için en uygun tarih ile Calendar bir örnek oluşturmanız gerekir ve uygun bir zaman dilimi kullanarak. O zaman Saat, Dakika, Saniye ve 0, ve sonuç zamanlarını karşılaştırmak için milisaniye her takvim yılında her bir alan ayarlayabilirsiniz. Kesinlikle iğrenç Joda çözüm olsa göre :)

Bölge bölümü önemlidir zaman: 8**her zamanUTC dayalı. Bir tarih ilgimi çekmiştir çoğu durumda, bu bir tarih oldubelirli bir zaman dilimi içinde. Kendi başına bu Calendar kullanın veya Zaman (ki pek tavsiye etmem zaman dilimini kendine, hesabını vermek istemiyorsan.) Joda zorlar

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andytokkallos

    Andytokkallo

    27 Kasım 2007
  • Chip Johnson

    Chip Johnson

    30 AĞUSTOS 2007
  • SellerDp

    SellerDp

    27 EKİM 2009