本帖最后由 陈云阳 于 2014-6-28 13:51 编辑
newAl.contains(obj);
newAL为空,
Obj不为空,
那么调用contains到底有没有调用equals(e)方法
- contains
- public boolean contains(Object o)
- 如果此列表中包含指定的元素,则返回 true。更确切地讲,当且仅当此列表包含至少一个满足 (o==null ? e==null : o.equals(e)) 的元素 e 时,则返回 true。
- 指定者:
- 接口 Collection<E> 中的 contains
- 指定者:
- 接口 List<E> 中的 contains
- 覆盖:
- 类 AbstractCollection<E> 中的 contains
- 参数:
- o - 测试此列表中是否存在的元素
- 返回:
- 如果此列表包含特定的元素,则返回 true
复制代码
这是contains的说明文档,(o==null ? e==null : o.equals(e)) 这里o就是obj的引用,o不为空,应该就会调用equals才对,为什么运行时却没调用equals方法,有没谁知道contains完整的实现方 法
|