Errors مبتدئ

احصل على قيمة غير فارغة مع قيمة افتراضية واضحة، لا حاجة للعامل الثلاثي.

✕ Java 8
String name = input != null
    ? input
    : "default";
// easy to get the order wrong
✓ Java 9+
String name = Objects
    .requireNonNullElse(
        input, "default"
    );
هل ترى مشكلة في هذا الكود؟ أخبرنا.
📖

نية واضحة

اسم الدالة يصف بالضبط ما تفعله.

🛡️

قيمة افتراضية آمنة من null

القيمة الافتراضية نفسها تُفحص أيضاً من null.

📏

مقروء

أفضل من العامل الثلاثي لمنطق null-أو-افتراضي البسيط.

الأسلوب القديم
تحقق ثلاثي من null
الأسلوب الحديث
requireNonNullElse()
منذ JDK
9
الصعوبة
مبتدئ
Objects.requireNonNullElse()
متاح

متاح على نطاق واسع منذ JDK 9 (سبتمبر 2017)

يُرجع requireNonNullElse الوسيطة الأولى إذا لم تكن فارغة وإلا الثانية. القيمة الافتراضية نفسها لا يمكن أن تكون فارغة — ترمي NPE إذا كلتاهما فارغتان مما يكشف الأخطاء مبكراً.

مشاركة 𝕏 🦋 in