আমার কাছে নিম্নলিখিত কোড রয়েছে:
Boolean bool = null;
try
{
if (bool)
{
//DoSomething
}
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
আমার বুলিয়ান ভেরিয়েবল "বুল" এ কেন চেক আপ করা যায় তার ব্যতিক্রম? এটি যদি সত্য হয় না তখন এটি "দেখায়" যখন বিবৃতিটি ঠিক পেরে যায় না? আমি যখন বিবৃতিটি সরিয়ে ফেলি বা এটি শূন্য হয় না তা পরীক্ষা করে দেখি, ব্যতিক্রমটি চলে যায়।
if (bool == Boolean.TRUE)একটি ব্যতিক্রম ব্যতীত মিথ্যা মূল্যায়ন করে। আমি সবেমাত্র পাওয়া ক্ষেত্রে এটি ইচ্ছাকৃত ছিল কিনা তা নিশ্চিত নয়।
boolহচ্ছে nullঅথবা যদি Boolean(রেফারেন্স হিসাবে এবং স্পষ্টভাবে নির্মাণ করা হয়েছিল Boolean.TRUE)। সুতরাং প্রস্তাবিত নয়; if (Boolean.TRUE.equals(bool))যার বিপরীতে সুরক্ষিতভাবে হ্যান্ডলিং nullমান সহ প্রত্যাশা অনুযায়ী কাজ করবে ।