Language প্রাথমিক

প্যাটার্ন ম্যাচিং ব্যবহার করে টাইপ চেক (type check) এবং কাস্ট (cast) কে এক স্টেপে একত্রিত করুন।

✕ Java 8
if (obj instanceof String) {
    String s = (String) obj;
    System.out.println(s.length());
}
✓ Java 16+
if (obj instanceof String s) {
    IO.println(s.length());
}
এই কোডে সমস্যা দেখছেন? আমাদের জানান।
🔄

কোনো অপ্রয়োজনীয় কাস্ট নেই

টাইপ চেক এবং ভ্যারিয়েবল বাইন্ডিং একটি সিঙ্গেল এক্সপ্রেশনেই সম্পন্ন হয়।

📏

কম লাইন

দুটির পরিবর্তে একটি লাইন – কাস্ট লাইনটি সম্পূর্ণরূপে বিলুপ্ত হয়ে যায়।

🛡️

স্কোপ সেফটি (Scope Safety)

প্যাটার্ন ভ্যারিয়েবল শুধুমাত্র সেই স্কোপে থাকে যেখানে টাইপটি নিশ্চিত (guaranteed) হয়।

পুরনো পদ্ধতি
instanceof + Cast
আধুনিক পদ্ধতি
প্যাটার্ন ভ্যারিয়েবল (Pattern Variable)
JDK থেকে
16
কঠিনতা
প্রাথমিক
instanceof-এর জন্য প্যাটার্ন ম্যাচিং (Pattern matching for instanceof)
উপলব্ধ

JDK 16 (মার্চ 2021) থেকে ব্যাপকভাবে উপলব্ধ

instanceof-এর জন্য প্যাটার্ন ম্যাচিং টাইপ চেকের পরে অপ্রয়োজনীয় কাস্টকে দূর করে। প্যাটার্ন ভ্যারিয়েবল স্বয়ংক্রিয়ভাবে স্কোপড (scoped) হয় যেখানে প্যাটার্নটি ম্যাচ করে, যা কোডকে আরও নিরাপদ এবং সংক্ষিপ্ত করে তোলে।