कुछ टाइपिंग को बचाने और मेरे कोड को स्पष्ट करने के लिए, निम्नलिखित विधि का एक मानक संस्करण है?
public static boolean bothNullOrEqual(Object x, Object y) {
return ( x == null ? y == null : x.equals(y) );
}
क्या कोई कह सकता है कि ऐसी चीज़ कहाँ उपयोगी है?
—
anjanb
यह सिर्फ आपको अपने बराबर () पद्धति में अशक्त चेक को छोड़ने की अनुमति देता है।
—
माइकल मायर्स
यदि आप किसी संग्रह को कार्यान्वित कर रहे हैं, तो आपकी .contains () विधि, जब दिए गए "o" को "परीक्षण" करने की आवश्यकता होती है, यदि इस संग्रह में कम से कम एक तत्व e ऐसा हो (o == null? E == null: o.equals (e) ))। " इसी तरह, आपके .remove () विधि को ऐसे तत्व को निकालना होगा।
—
newacct
केवल मेरे दो सेंट्स। मैं उपयोग करूँगा: सार्वजनिक स्थैतिक बूलियन दोनों NullOrEqual (ऑब्जेक्ट x, ऑब्जेक्ट y) {वापसी (x = = y) (x! = Null && x.equals (y))); } IMHO, यह नौसिखिए प्रोग्रामर के लिए अधिक पठनीय है।
—
m_vitaly
एक अन्य उपयोग मामला: एक मान की तुलना यह देखने के लिए करें कि क्या यह एक गंदे जाँच के दौरान उसके पिछले मूल्य से बदल गया है।
—
Neromancer