نسّق التواريخ باستخدام DateTimeFormatter الآمن للخيوط والثابت.
مقارنة الكود
✕ Pre-Java 8
// Not thread-safe!
SimpleDateFormat sdf =
new SimpleDateFormat("yyyy-MM-dd");
String formatted = sdf.format(date);
// Must synchronize for concurrent use
✓ Java 8+
DateTimeFormatter fmt =
DateTimeFormatter.ofPattern(
"uuuu-MM-dd");
String formatted =
LocalDate.now().format(fmt);
// Thread-safe, immutable
هل ترى مشكلة في هذا الكود؟ أخبرنا.
لماذا يتفوق الأسلوب الحديث
آمن للخيوط
شارك المُنسِّقات عبر الخيوط دون مزامنة.
تنسيقات مدمجة
ISO_LOCAL_DATE و ISO_INSTANT وغيرها للتنسيقات القياسية.
ثابت
خزّنه كثوابت static final بأمان.
الأسلوب القديم
SimpleDateFormat
الأسلوب الحديث
DateTimeFormatter
منذ JDK
8
الصعوبة
مبتدئ
دعم JDK
تنسيق التاريخ
متاح
متاح على نطاق واسع منذ JDK 8 (مارس 2014)
كيف يعمل
DateTimeFormatter ثابت وآمن للخيوط بخلاف SimpleDateFormat. يمكن تخزينه كثابت ومشاركته. تتوفر مُنسِّقات مسبقة التعريف مثل ISO_LOCAL_DATE للتنسيقات الشائعة.
توثيق ذو صلة