java中list集合中contains()的用法,啥意思 | 您所在的位置:网站首页 › 集合相等什么意思 › java中list集合中contains()的用法,啥意思 |
1、java中list集合中contains()的用法为: public boolean list.contains(Object o) 意思为:当前列表若包含某元素,返回结果为true, 若不包含该元素,返回结果为false。 2、contains()方法实现的具体细节为: 当list调用contains()方法并传递一个元素时,会执行遍历,逐个对比item是否等于该元素,当遍历结束后,如果还没有一个元素等于该元素的值,则返回false, 否则返回true 3、java中list集合中contains()用法的代码示例为: import java.util.ArrayList; public class ArrayListDemo { public static void main(String[] args) { // 创建1个空列表 ArrayList arrlist = new ArrayList(); // 添加测试数据 arrlist.add(20); arrlist.add(25); arrlist.add(10); arrlist.add(15); // 列表是否包含元素 10 boolean res = arrlist.contains(10); if (res == true) { System.out.println(“包含”); } else { System.out.println(“不包含”); }}} 1、List的contains(obj)方法 实际上,List调用contains(Object obj)方法时,会遍历List中的每一个元素,然后再调用每个元素的equals()方法去跟contains()方法中的参数进行比较,如果有一个元素的equals()方法返回true则contains()方法返回true,否则所有equals()方法都不返回true,则ontains()方法则返回false。因此,重写了Course类的equals()方法,否则,testListContains()方法的第二条输出为false。 2、Set的Contains(obj)方法 当调用HashSet的contains(Object obj)方法时,其实是先调用每个元素的hashCode()方法来返回哈希码,如果哈希码的值相等的情况下再调用equals(obj)方法去判断是否相等,只有在这两个方法所返回的值都相等的情况下,才判定这个HashSet包含某个元素。因此,需重写Course类的hashCode()方法和equals()方法。 参考资料来源:Java官方文档-Interface List |
CopyRight 2018-2019 实验室设备网 版权所有 |