यहाँ कैसे HashMap बराबर विधि काम करता है:
public boolean equals(Object o) {
..........
..........
Map<K,V> m = (Map<K,V>) o;
..........
Iterator<Entry<K,V>> i = entrySet().iterator();
while (i.hasNext()) {
Entry<K,V> e = i.next();
K key = e.getKey();
V value = e.getValue();
if (value == null) {
if (!(m.get(key)==null && m.containsKey(key)))
return false;
} else {
if (!value.equals(m.get(key)))
return false;
}
...........
...........
return true;
}
अब के बाद से, इसका मतलब है कि किसी कुंजी के लिए मूल्य वस्तुओं एक ही होना चाहिए मूल्य की वस्तुओं की बराबरी विधि, (के रूप में द्वारा नियंत्रित विधि के बराबर होती है) लागू किया जाता है ।
ऊपर आपको यह समझने में मदद मिलेगी कि आपके जुनीट किस मामले में गुजरेंगे। अपने JUnit विधि में आप का उपयोग कर सकते हैं:
public static void assertEquals(java.lang.Object expected,
java.lang.Object actual)
अधिक जानकारी के लिए link देखें।
चीयर्स !!
स्रोत
2013-09-05 04:45:09
आप जावा 1.7 या उच्चतर संस्करण का उपयोग कर रहे हैं, तो नीचे दिए कोड स्निपेट काम करेंगे। '' ऑब्जेक्ट्स।बराबर (अपेक्षित वर्डमैप, वास्तविक वर्डमैप) '' । । कृपया बराबर विधि के बारे में अधिक जानकारी यहां प्राप्त करें: https://docs.oracle.com/javase/8/docs/api/java/util/Objects.html#equals-java.lang.Object-java.lang.Object - –