• 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();
    	}
    }
    

      

  • 相关阅读:
    《JAVA设计模式》之模板模式(Template)
    《JAVA设计模式》之策略模式(Strategy)
    《JAVA设计模式》之享元模式(Flyweight)
    《JAVA设计模式》之桥接模式(Bridge)
    《JAVA设计模式》之组合模式(Composite)
    《JAVA设计模式》之外观模式(Facade)
    《JAVA设计模式》之代理模式(Proxy)
    《JAVA设计模式》之装饰模式(Decorator)
    《JAVA设计模式》之适配器模式(Adapter)
    《JAVA设计模式》之原型模式(Prototype)
  • 原文地址:https://www.cnblogs.com/zheting/p/7703585.html
Copyright © 2020-2023  润新知