假设我创建一个对象并将其添加到我的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()
return true
?
数组列表implements
列表界面。
如果你看一下Javadoc 为List http://docs.oracle.com/javase/7/docs/api/java/util/List.html#contains%28java.lang.Object%29 at the contains
方法你会看到它使用equals()
评估两个对象是否相同的方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)