Date/Time مبتدئ

احسب فوارق الوقت بـ Duration و Period الآمنَين من حيث النوع.

✕ 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);
هل ترى مشكلة في هذا الكود؟ أخبرنا.
🎯

آمن من حيث النوع

Duration للوقت و Period للتواريخ — لا التباس.

🛡️

حساب صحيح

يتعامل مع انتقالات التوقيت الصيفي والسنوات الكبيسة والثواني الكبيسة.

📖

مقروء

ChronoUnit.DAYS.between() يُقرأ كاللغة الطبيعية.

الأسلوب القديم
حساب الميلي ثانية
الأسلوب الحديث
Duration / Period
منذ JDK
8
الصعوبة
مبتدئ
Duration و Period
متاح

متاح على نطاق واسع منذ JDK 8 (مارس 2014)

Duration للكميات الزمنية (ساعات ودقائق وثوان). Period للكميات المبنية على التاريخ (سنوات وأشهر وأيام). ChronoUnit.between() للفروق البسيطة. جميعها تتعامل مع الحالات الطرفية بشكل صحيح.

مشاركة 𝕏 🦋 in