कहते हैं, मैं एक वस्तु बनाता हूं और उसे अपने साथ जोड़ता हूं ArrayList
। अगर मैं फिर उसी कंस्ट्रक्टर इनपुट के साथ एक और ऑब्जेक्ट बनाता हूं, तो क्या contains()
विधि दो वस्तुओं के समान होने का मूल्यांकन करेगी ? मान लें कि कंस्ट्रक्टर इनपुट के साथ कुछ भी अजीब नहीं करता है, और दोनों ऑब्जेक्ट्स में संग्रहीत चर समान हैं।
ArrayList<Thing> basket = new ArrayList<Thing>();
Thing thing = new Thing(100);
basket.add(thing);
Thing another = new Thing(100);
basket.contains(another); // true or false?
class Thing {
public int value;
public Thing (int x) {
value = x;
}
equals (Thing x) {
if (x.value == value) return true;
return false;
}
}
क्या वापसी के class
लिए इसे लागू किया जाना चाहिए ?contains()
true