Errors প্রাথমিক

সরাসরি একটি সুইচ কেইস হিসেবে null হ্যান্ডেল করুন – আলাদা গার্ডের প্রয়োজন নেই।

✕ Java 8
// Must check before switch
if (status == null) {
    return "unknown";
}
return switch (status) {
    case ACTIVE  -> "active";
    case PAUSED  -> "paused";
    default      -> "other";
};
✓ Java 21+
return switch (status) {
    case null    -> "unknown";
    case ACTIVE  -> "active";
    case PAUSED  -> "paused";
    default      -> "other";
};
এই কোডে সমস্যা দেখছেন? আমাদের জানান।
🎯

সুস্পষ্ট

null হ্যান্ডলিং সরাসরি সুইচের মধ্যেই দৃশ্যমান।

🛡️

কোনো NPE নেই

একটি null ভ্যালুর উপর সুইচ করলে NullPointerException থ্রো (throw) হবে না।

📐

অল-ইন-ওয়ান (All-in-one)

null সহ সমস্ত কেইস একটি সিঙ্গেল সুইচ এক্সপ্রেশনে থাকে।

পুরনো পদ্ধতি
সুইচ-এর আগে গার্ড (Guard Before Switch)
আধুনিক পদ্ধতি
case null
JDK থেকে
21
কঠিনতা
প্রাথমিক
সুইচ-এ null কেইস (Null case in switch)
উপলব্ধ

JDK 21 LTS (সেপ্টেম্বর 2023) থেকে ব্যাপকভাবে উপলব্ধ

প্যাটার্ন ম্যাচিং সুইচ (Pattern matching switch) একটি কেইস লেবেল (case label) হিসেবে null-কে ম্যাচ করতে পারে। এটি সুইচের আগে null চেক করার প্রয়োজনীয়তা দূর করে এবং null হ্যান্ডলিংকে সুস্পষ্ট ও ভিজিবল করে তোলে।