Instant بدقة النانو ثانية
احصل على طوابع زمنية بدقة الميكرو ثانية أو النانو ثانية.
مقارنة الكود
✕ Java 8
// Millisecond precision only
long millis =
System.currentTimeMillis();
// 1708012345678
✓ Java 9+
// Microsecond/nanosecond precision Instant now = Instant.now(); // 2025-02-15T20:12:25.678901234Z long nanos = now.getNano();
هل ترى مشكلة في هذا الكود؟ أخبرنا.
لماذا يتفوق الأسلوب الحديث
دقة أعلى
طوابع زمنية بدقة الميكرو/النانو ثانية مقابل الميلي ثانية.
آمن من حيث النوع
يحمل Instant دقته — لا أعداد طويلة غامضة.
مبني على UTC
Instant دائماً بـ UTC — لا التباس في المنطقة الزمنية.
الأسلوب القديم
ميلي ثانية
الأسلوب الحديث
نانو ثانية
منذ JDK
9
الصعوبة
متوسط
دعم JDK
Instant بدقة النانو ثانية
متاح
متاح على نطاق واسع منذ JDK 9 (سبتمبر 2017)
كيف يعمل
حسّن Java 9 دقة الساعة بحيث يلتقط Instant.now() دقة الميكرو ثانية على معظم المنصات (النانو ثانية على بعضها). تُعطي currentTimeMillis() القديمة ميلي ثانية فحسب.
توثيق ذو صلة