zoukankan      html  css  js  c++  java
  • list集合去重复

    1. 循环list中的所有元素然后删除重复

     
    public   static   List  removeDuplicate(List list)  {       
      for  ( int  i  =   0 ; i  <  list.size()  -   1 ; i ++ )  {       
          for  ( int  j  =  list.size()  -   1 ; j  >  i; j -- )  {       
               if  (list.get(j).equals(list.get(i)))  {       
                  list.remove(j);       
                }        
            }        
          }        
        return list;       
    }  
     

    2. 通过HashSet踢除重复元素

     
    public static List removeDuplicate(List list) {   
        HashSet h = new HashSet(list);   
        list.clear();   
        list.addAll(h);   
        return list;   
    }   
     

    3. 删除ArrayList中重复元素,保持顺序

     
    // 删除ArrayList中重复元素,保持顺序     
     public static void removeDuplicateWithOrder(List list) {    
        Set set = new HashSet();    
         List newList = new ArrayList();    
       for (Iterator iter = list.iterator(); iter.hasNext();) {    
             Object element = iter.next();    
             if (set.add(element))    
                newList.add(element);    
          }     
         list.clear();    
         list.addAll(newList);    
        System.out.println( " remove duplicate " + list);    
     }   
     

    4.把list里的对象遍历一遍,用list.contain(),如果不存在就放入到另外一个list集合中

     
    public static List removeDuplicate(List list){  
            List listTemp = new ArrayList();  
            for(int i=0;i<list.size();i++){  
                if(!listTemp.contains(list.get(i))){  
                    listTemp.add(list.get(i));  
                }  
            }  
            return listTemp;  
        }  
     

    一般在项目中我们从数据库读取出来的应该是一个list对象泛型 我们统一认为如果ID一样的两条数据就是重复数据 所以在使用的时候应该是list.get(i).get对象属性 进行判断

  • 相关阅读:
    Linux系统挂载数据盘
    python 路径和文件的遍历
    Markdown 语法手册
    Markdown 语法手册
    Markdown语法说明
    Alpha通道
    图像质量评价之数据库
    Python报错:ImportError: No module named src.data_layer
    history命令
    关于Segmentation fault (core dumped)
  • 原文地址:https://www.cnblogs.com/woshuyuqiang/p/9431882.html
Copyright © 2011-2022 走看看