zoukankan      html  css  js  c++  java
  • ArrayList去除重复元素的两种方法

    package java_test;
    
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    import java.util.ListIterator;
    
    
    public class ListItertorDemo {
    	public static void main(String[] args) {
    
    		List list=new ArrayList();
    	
    		list.add("abc1");
    		list.add("abc1");
    		list.add("abc1");
    		list.add("abc3");
    		list.add("abc2");
    		list.add("abc1");
    		list.add("abc3");
    		list.add("abc3");
    		list.add("abc1");
    		list.add("abc1");
    		list.add("abc1");
    		list.add("abc3");
    		
    		
    		System.out.println(list);
    		singleElement2(list);
    		System.out.println(list);
    
    		
    	}
    	/*方法二,
    	 * 思路:
    	 * 1.最后唯一性的元素也很多,可以先定义一个临时容器用于存储这些唯一性的元素
    	 * 2.对原有容器进行元素的获取,并到临时容器中去判断是否存在,容器本身就有这个功能,判断元素是否存在 equals
    	 * 3.存在就不存储,不存在就存储
    	 * 4.遍历完原容器后,临时容器中存储的就是唯一性的元素
    	 */
    	public static void singleElement2(List list){
    		List temp=new ArrayList();
    		for (Iterator it = list.iterator(); it.hasNext();) {
    			Object obj = (Object) it.next();
    			if(!temp.contains(obj)){
    				temp.add(obj);
    			}
    			
    		}
    		list.clear();
    		list.addAll(temp);
    		
    	}
    	//方法一,思想是数组选择排序
    	public static void singleElement(List list){
    		
    		for(int x=0;x<list.size()-1;x++){
    			
    			Object obj_x=list.get(x);
    			for(int y=x+1;y<list.size();y++){
    				
    				if(obj_x.equals(list.get(y))){
    					list.remove(y);
    					y--;
    				}
    			}
    		}
    		
    	}
    	
    }
    

      

  • 相关阅读:
    Github开源人脸识别项目face_recognition
    yolo源码解析(3):进行简单跳帧
    [转]详细解读TrueSkill 排名系统
    yolo源码解析(3):视频检测流程
    Java中replace和replaceall的区别
    对input输入框日期显示格式化
    Eclipse修改编码字体
    Eclipse修改控制台字体
    Eclipse文档注释导出doc
    数组的定义方式及初始化
  • 原文地址:https://www.cnblogs.com/youning/p/7218955.html
Copyright © 2011-2022 走看看