আমি কেবলমাত্র কিছু পদক্ষেপ নিতে চাই যদি আমার স্ট্রিংয়ের অর্থপূর্ণ মান থাকে। সুতরাং, আমি এটি চেষ্টা করেছিলাম।
if (!myString.equals("")) {
doSomething
}
এবং এই
if (!myString.equals(null)) {
doSomething
}
এবং এই
if ( (!myString.equals("")) && (!myString.equals(null))) {
doSomething
}
এবং এই
if ( (!myString.equals("")) && (myString!=null)) {
doSomething
}
এবং এই
if ( myString.length()>0) {
doSomething
}
এবং সব ক্ষেত্রেই আমার প্রোগ্রামটি doSomething
সত্য যে আমার স্ট্রিংটি EMPTY। এটি বর্তমানে এমন সমান null
। তো, তাতে দোষ কী?
যোগ করেছেন:
আমি সমস্যার কারণ খুঁজে পেয়েছি। ভেরিয়েবলটিকে স্ট্রিং হিসাবে ঘোষণা করা হয়েছিল এবং ফলস্বরূপ, null
এই ভেরিয়েবলকে বরাদ্দ করা হয়েছিল "null"
! সুতরাং, if (!myString.equals("null"))
কাজ করে।
System.out.println(myString)
যদি এই ব্লকটি করার আগে অবিলম্বে তা দেখতে পান তবে সেখানে কী আছে?
null
"?
null
এই ভেরিয়েবলকে বরাদ্দ করা হয়েছে "null"
- এটি একটি ভয়ানক ধারণা। যদি সম্ভব হয় তবে এই নকশাটি পরিবর্তন করার চেষ্টা করুন।
null
কোন পদ্ধতি নেই, তাই নাequals()
। যদিmyString
থাকতnull
তবে আপনি কীভাবে এটিতে কোনও পদ্ধতিতে প্রার্থনা করবেন? :)