Errors مبتدئ

استبدل تحققات null المتداخلة بخط أنابيب Optional.

✕ Java 8
String city = null;
if (user != null) {
    Address addr = user.getAddress();
    if (addr != null) {
        city = addr.getCity();
    }
}
if (city == null) city = "Unknown";
✓ Java 9+
String city = Optional.ofNullable(user)
    .map(User::address)
    .map(Address::city)
    .orElse("Unknown");
هل ترى مشكلة في هذا الكود؟ أخبرنا.
🔗

قابل للتسلسل

كل خطوة .map() تتعامل مع null بشفافية.

📖

تدفق خطي

اقرأ من اليسار إلى اليمين بدلاً من كتل if المتداخلة.

🛡️

محمي من NPE

null مُعالَجة في كل خطوة — لا انهيار ممكن.

الأسلوب القديم
تحققات null متداخلة
الأسلوب الحديث
خط أنابيب Optional
منذ JDK
9
الصعوبة
مبتدئ
تسلسل Optional
متاح

متاح منذ JDK 8+ (محسَّن في 9+)

Optional.map() يتسلسل عبر القيم القابلة للإلغاء مع دوارة قصيرة عند أول null. orElse() يوفر القيمة الافتراضية. يُزيل هذا تحقق null هرمي الشكل.

مشاركة 𝕏 🦋 in