DefaultListModel.contains()有什么作用?

时间:2012-10-05 16:32:11

标签: java eclipse swing collections defaultlistmodel

我在Eclipse调试器中看到以下表达式

downsPanel.relsListModel.elementAt(4)==oldValue

downsPanel.relsListModel.contains(oldValue)

其中第一个评估为true,第二个评估为false

这意味着contains()没有达到我的预期。那它做了什么?

2 个答案:

答案 0 :(得分:1)

假设两个测试都在同一点完成,这只能意味着一件事:oldValue.equals(oldValue)返回false

问题在于equals方法,必须修复。

答案 1 :(得分:1)

DefaultListModel.contains(Object)代表支持Vector contains

public boolean contains(Object elem) {
    return delegate.contains(elem);
}

这可能是equals相关问题(不要忘记修复hashCode)。