List的 并集交集差集操作

Posted 每天进步一点

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了List的 并集交集差集操作相关的知识,希望对你有一定的参考价值。

package com.zheting.collection.list;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

/**
 * List基本操作:
 * 01.集合的并集
 * 02.集合的交集
 * 03.集合的差集
 * 04.集合去重
 * 05.数组转换成集合
 * 06.集合转换成数组
 */
public class TestArrayList {
	//List集合的并集 addAll
	public void test01(){
		List<String> list_01 = new ArrayList<String>();
			list_01.add("a");
			list_01.add("b");
			list_01.add("c");
		List<String> list_02 = new ArrayList<String>();
			list_02.add("d");
			list_02.add("e");
			list_02.add("f");
			list_02.add("a");
		list_01.addAll(list_02);//a, b, c, d, e, f, a
		this.printList(list_01);
	}
	
	//List集合的交集 retainAll
	public void test02(){
		List<String> list_01 = new ArrayList<String>();
			list_01.add("a");
			list_01.add("b");
			list_01.add("c");
		List<String> list_02 = new ArrayList<String>();
			list_02.add("b");
			list_02.add("e");
			list_02.add("f");
			list_02.add("a");
		list_01.retainAll(list_02);//a, b
		this.printList(list_01);
	}
	
	//List集合的差集 removeAll
	public void test03(){
		List<String> list_01 = new ArrayList<String>();
			list_01.add("a");
			list_01.add("b");
			list_01.add("c");
		List<String> list_02 = new ArrayList<String>();
			list_02.add("b");
			list_02.add("e");
			list_02.add("f");
			list_02.add("a");
		list_01.removeAll(list_02);//c
		this.printList(list_01);
	}
	
	//List集合去重
	public void test04(){
		List<String> list_01 = new ArrayList<String>();
			list_01.add("a");
			list_01.add("b");
			list_01.add("c");
			list_01.add("d");
			list_01.add("b");
			list_01.add("c");
		List<String> list_02 = new ArrayList<String>();
		for (String str : list_01) {
			if(!list_02.contains(str)){
				list_02.add(str);
			}
		}
		this.printList(list_02);//a,b,c,d
	}
	
	//数组转换成集合
	public void test05(){
		String[] strs = {"a","b","c","d"};
		List<String> list = Arrays.asList(strs);
		this.printList2(list); //a, b, c, d
	}
	
	//集合转换成数组
	public void test06(){
		List<String> list = new ArrayList<String>();
			list.add("a");
			list.add("b");
			list.add("c");
			list.add("d");
		Object[] strs = list.toArray();
		String str = "";
		for (Object string : strs) {
			str += string + ", ";
		}
		System.out.println(str);
	}
	
	//输出一个集合中的元素
	public void printList(List list){
		String str = "";
		for (Object object : list) {
			str += object + ", ";
		}
		System.out.println(str);
	}
	
	//输出一个集合中的元素
	public void printList2(List list){
		String str = "";
		Iterator iterator = list.iterator();
		while(iterator.hasNext()) {
			str += iterator.next() + ", ";
		}
		System.out.println(str);
	}
	
	public static void main(String[] args) {
		new TestArrayList().test05();
	}
}

  

以上是关于List的 并集交集差集操作的主要内容,如果未能解决你的问题,请参考以下文章

Java List 集合取 交集并集差集补集 Java集合取交集Java集合并集

两个list,并集交集差集

pythonlist差集|并集|交集

list的交集,差集,并集

java list 交集 并集 差集 去重复并集

列表交集,并集和差集