void foo(Item item) {
LinkedList<Item> items = new LinkedList<Item>();
items.add(item);
Item i = items.getLast();
boolean b = i.equals(item);
}
b
是false
。我认为应该是真的。为什么呢?
答案 0 :(得分:-2)
确保在equals()
班级正确中覆盖hashCode()
和Item
。正确检查后,equals()
提供的java.lang.Object
方法的默认实现似乎适用于OP的情况。
equals()
类中Item
的某些错误实现似乎导致了这个问题。