首页 > 代码库 > ArrayList.contains() 方法实现方式

ArrayList.contains() 方法实现方式

 

在看 http://www.cnblogs.com/silence-hust/p/4558701.html 

重写 equals 方法的时候,涉及的方式是判断 对象是否存在于列表中,正好翻一翻源码了解一下

 

Arraylist 的底层是一个数据 

技术分享

 这个是构造方法,add 了元素后,size 就是底层数组的长度,也是当前列表的长度

技术分享

 这个就是 contains 方法,判断元素是否存在于列表中,可以看到其调用了一个 indexOf() 方法。

顾名思义就是查询元素在列表中的位置,用返回的数组下标和0做比较

技术分享

 看看 indexOf()方法,判断 null ,否则 用 equals 对比元素地址是否为同一引用 

 技术分享

 这个 equals 方法是 Object 类中的

 技术分享

这就是 contains() 方法的实现过程。

 

ArrayList.contains() 方法实现方式