Optional<T> (Java 8+) ایک container ہے جو ہو سکتا ہے کہ ایک value رکھے یا نہ رکھے — یہ "ایک value موجود نہ ہو سکتی ہے" کو ظاہر کرنے کا ایک واضح طریقہ ہے بجائے null return کرنے کے۔ یہ dreaded NullPointerException (NPE) سے بچنے میں مدد کرتا ہے کیونکہ یہ callers کو خالی case پر غور کرنے پر مجبور کرتا ہے۔
مسئلہ: null اور NPEs
User {
userMap.get(id);
}
findUser();
u.getName();
