Date/Time Başlangıç

Zaman farklarını tür-güvenli Duration ve Period ile hesaplayın.

✕ Pre-Java 8
// How many days between two dates?
long diff = date2.getTime()
    - date1.getTime();
long days = diff
    / (1000 * 60 * 60 * 24);
// ignores DST, leap seconds
✓ Java 8+
long days = ChronoUnit.DAYS
    .between(date1, date2);
Period period = Period.between(
    date1, date2);
Duration elapsed = Duration.between(
    time1, time2);
Bu kodda bir sorun mu gördünüz? Bize bildirin.
🎯

Tür-güvenli

Zaman için Duration, tarihler için Period — karışıklık yok.

🛡️

Doğru hesaplama

Yaz saati geçişlerini, artık yılları ve artık saniyeleri doğru ele alır.

📖

Okunabilir

ChronoUnit.DAYS.between() doğal dil gibi okunur.

Eski Yaklaşım
Milisaniye Matematiği
Modern Yaklaşım
Duration / Period
JDK'dan itibaren
8
Zorluk
Başlangıç
Duration ve Period
Mevcut

JDK 8'den (Mart 2014) itibaren geniş çapta kullanılabilir

Duration, saat, dakika ve saniye gibi zaman tabanlı miktarlar içindir. Period ise yıl, ay ve gün gibi tarih tabanlı miktarlar içindir. Basit farklar için ChronoUnit.between() kullanılır. Tümü kenar durumları doğru şekilde ele alır.

Paylaş 𝕏 🦋 in