, मुझे पहले शुरू का एक नमूना कोड के साथ करते हैं ...जावा - कोडिंग शैली: "एबीसी" के विपक्ष और पेशेवर क्या हैं .equals ("SOMESTRING") शैली स्ट्रिंग तुलना?
String password = "";
if("PIRATE".equals(password)) {
// Do something
}
यहाँ देखें स्ट्रिंग निरंतर या शाब्दिक (जो) "समुद्री डाकू" दो तार की समानता की जांच करने के लिए किया जाता है। जबकि ...
String password = "";
if(password.equals("PIRATE")) {
// Do something
}
यह भी पिछले कोड के रूप में बिल्कुल काम करता है।
आजकल, मुझे पहली शैली "STRING_LITERAL" .equals (STRING_OBJECT), जबकि जावा लोग कोड पोस्ट करते हैं।
तो मेरा सवाल है, यह शैली कहां से आती है? और क्या यह किसी भी तरह से दूसरी शैली से बेहतर है?
असल में मुझे दूसरी शैली की तुलना में दूसरी शैली अधिक तार्किक लगता है, क्यों?
की सुविधा देता है एक आवश्यकता लेने की तरह, यदि उपयोगकर्ता द्वारा प्रदत्त-पासवर्ड "समुद्री डाकू" के बराबर है तो उस उपयोगकर्ता की अनुमति देते हैं
जब आप ऊपर आवश्यकता को लागू करने शुरू करते हैं,
String userProvidedPassword = getPaswordFromUser();
if(userProvidedPassword.equals("PIRATE")) {
// Allow him
}
"पाइरेट" से अधिक तार्किक नहीं है .equals (userProvidedPassword);? बस इसके बारे में सोचो ...
मुझे सही अगर मैं गलत हूँ .. धन्यवाद ..
संपादित करें: क्षमा करें, this question मेरे पिछले खोज में नहीं आया था, और यह मेरे सवाल का जवाब पूरी तरह से। उन सभी लोगों के लिए भी धन्यवाद जिन्होंने यहां मदद की ..
आप एक स्पष्ट नल-चेक से बचें। यह अधिक संक्षिप्त कोड के लिए बनाता है। –
इसके साथ: 'userProvidedPassword.equals (" PIRATE ") 'आपको एक अतिरिक्त शून्य जांच की आवश्यकता है:' userProvidedPassword! = Null && userProvidedPassword.equals ("PIRATE") ' – NINCOMPOOP