Java List集合交集并集

位置:首页>文章>详情   分类: 教程分享 > Java教程   阅读(964)   2023-03-28 11:29:14

数组转集合

List<String> list=Arrays.asList("1","2");

注意转换出来的List为Arrays内部类集合,与常规的ArrayList有区别,比如常见的remove(e)等方法不可用。

如何转换为常规数组

List<String> list=new ArrayList<>(Arrays.asList("1","2"))

 

 

两个集合交集

交集说明:只取两个数组都存在的元素

DEMO 1

List<String> listA = new ArrayList<>(Arrays.asList("1","2","3"));
List<String> listB = new ArrayList<>(Arrays.asList("2","3","5"));
​
​
boolean isChanged=listB.retainAll(listA);
System.out.println(isChanged);
System.out.println(Arrays.toString(listB.toArray()))
​

输出结果:

["2","3"]

DEMO 2

List<String> listA = new ArrayList<>(Arrays.asList("1","2","3"));
List<String> listC = new ArrayList<>(Arrays.asList("5","6"));
listC.retainAll(listA);
System.out.println(Arrays.toString(listC.toArray()))

输出结果:

[]

 

两个集合并集

并集说明:两个集合合并成一个(可以存在相同元素)

DEMO 1

List<String> listA = new ArrayList<>(Arrays.asList("1","2","3"));
List<String> listB = new ArrayList<>(Arrays.asList("2","3","5"));
​
listB.addAll(listA);
System.out.println(Arrays.toString(listB.toArray()))
​

输出结果:

["1","2","3","2","3","5"]

DEMO 2

List<String> listA = new ArrayList<>(Arrays.asList("1","2","3"));
List<String> listC = new ArrayList<>(Arrays.asList("5","6"));
​
listC.addAll(listA);
System.out.println(Arrays.toString(listC.toArray()))
​

输出结果:

["1","2","3","5","6"]

 

两个集合并集去重

两个集合合并,且删除重复元素

DEMO 1

List<String> listA = new ArrayList<>(Arrays.asList("1","2","3"));
List<String> listB = new ArrayList<>(Arrays.asList("2","3","5"));
​
listB.removeAll(listA);
listB.addAll(listA);
System.out.println(Arrays.toString(listB.toArray()))

输出结果:

["1","2","3","5"]

 

两个集合差集

集合差集说明:A集合删除B集合里面与A相同的元素,保留A集合有B集合没有的部分

DEMO 1

List<String> listA = new ArrayList<>(Arrays.asList("1","2","3"));
List<String> listB = new ArrayList<>(Arrays.asList("2","3","5"));
​
listB.removeAll(listA);
System.out.println(Arrays.toString(listB.toArray()))

输出结果:

["5"]

DEMO 2

List<String> listA = new ArrayList<>(Arrays.asList("1","2","3"));
List<String> listC = new ArrayList<>(Arrays.asList("5","6"));
​
listC.removeAll(listA);
System.out.println(Arrays.toString(listC.toArray()))
​

输出结果:

["5","6"]
地址:https://www.leftso.com/article/878.html

相关阅读

数组转集合List&lt;String&gtl; list=Arrays.asList("1","2");注意转换出来的List为Arrays内部类集合,与常规的ArrayList有区别,比如常...
spring validate 验证List集合演示用类User/Addressimport lombok.Data; import javax.validation.constraints....
Java 8使用多个comparators进行集合分组排序
//声明一个List集合List&lt;Person&gtl; list = new ArrayList();           list.add(new Person("1001", "小A...
Java编程中使用Arrays.asList()和Collections.singletonList()创建单个元素的List
本文主要说明在spring mvc框架中如何接收前端发过来的集合对象和相关的处理。主要讲解两种方式,form表单提交方式和ajax提交的方式
简介本博文主要讲解在Java 8中 如何通过stream流的方式去重
javastreamList根据对象某个属性升序或降序排序代码参考;publicclassMyTests{@NoArgsConstructor@AllArgsConstructor@Datapu...
取出属性为集合List&lt;String&gtl; stateNameList = dictEntityList.stream().map(DictEntity::getName).colle...
Java stream 筛选集合中的唯一对象出来演示数据模型@AllArgsConstructor @NoArgsConstructor @Data public class UserInfo ...