zoukankan      html  css  js  c++  java
  • 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();
    	}
    }
    

      

  • 相关阅读:
    phpcms V9 联动菜单的调用
    【转】雷军:扁平化管理 不打卡不设KPI
    【转】 Json转换利器Gson之实例五-注册TypeAdapter及处理Enum类型
    【转】Json转换利器Gson之实例四-实际开发中的特殊需求处理
    【转】 Json转换利器Gson之实例三-Map处理
    【转】 Json转换利器Gson之实例二-Gson注解和GsonBuilder
    【转】Json转换利器Gson之实例一-简单对象转化和带泛型的List转化
    【转】工作分解结构在软件开发中的应用
    【转】 IT项目管理的三个条件、五个步骤
    【转】 项目组内个角色的职责说明
  • 原文地址:https://www.cnblogs.com/zheting/p/7703585.html
Copyright © 2011-2022 走看看