java list.contains

作者:原创时间:2022-04-02
文档

java list.contains是什么,让我们一起了解一下?

contains就是查看给定元素是否在list中存在,经常用于去除重复记录,从数据库中查询出满足一系列条件的记录,然后以对象的形式封装到List中去。

java List contains()用法及代码示例:

Java中的List接口的contains()方法用于检查指定元素是否存在于给定列表中。

// Java code to demonstrate the working of
// contains() method in List interface
import java.util.*;
class GFG {undefined
public static void main(String[] args)
{undefined
// creating an Empty Integer List
List arr = new ArrayList(4);
// using add() to initialize values
// [1, 2, 3, 4]
arr.add(1);
arr.add(2);
arr.add(3);
arr.add(4);
// use contains() to check if the element
// 2 exits or not
boolean ans = arr.contains(2);
if (ans)
System.out.println("The list contains 2");
else
System.out.println("The list does not contains 2");
// use contains() to check if the element
// 5 exits or not
ans = arr.contains(5);
if (ans)
System.out.println("The list contains 5");
else
System.out.println("The list does not contains 5");
}
}

实战操作:假设有两个条件A和B,满足A记录的称为ListA,满足B记录的称为ListB,现在要将ListA和ListB合并到一个List中区,此时两个记录集中可能会含有相同的记录,所以我们要过滤掉重复的记录。

假设存在的对象为User对象:

List list = new ArrayList();
if(ListA!=null){undefined
Iterator it= ListA.iterator();
while(it.hasNext()){undefined
list.add((User)it.next());
}
}
if(ListB!=null){undefined
Iterator it= ListB.iterator();
while(it.hasNext()){undefined
User us=(User)it.next();
if(!list.contains(us))
list.add(us);
}
}

首先我们将ListA中的对象全部装入到list中,然后在装入ListB中对象的时候对ListB中的每个元素进行一下判断,看list中是否已存在该元素,这里我们使用List接口的contains()方法。

下面来看一下他的原理:list.contains(us),系统会对list中的每个元素e调用us.equals(e),方法,加入list中有n个元素,那么会调用n次us.equals(e),只要有一次us.equals(e)返回了true,那么list.contains(us)返回true,否则返回false。

以上就是小编今天的分享了,希望可以帮助到大家。

显示全文
java locale java localtime java logging java logstash java main java malloc java mapping java math.ceil java matlab java matrix java memcpy java merge java method java mian java mina java mkdir java mmap java mockito java modelandview java module java list.add java linq java linklist java leveldb java lamada java kudu java kmeans java keystore java kafka java jxl java jvm java jtextfield java jtable java jta java jstat java jstack java jsonp java jsonfield java jquery java jps