zoukankan      html  css  js  c++  java
  • List中去除重复项的方法

    方法一: 利用HashSet不可重复的特性先将List中不重复的数据添加到HashSet中,然后再重新给List复制

    List<Map> list = dataService.getStrainItem(userId);
    HashSet h = new HashSet(list);
    list.clear();
    list.addAll(h);

    方法二: 第一种方法的进化,原理相同

    public static List removeListSameObject(List list){
            Set someSet = new HashSet(list);
            Iterator iterator = someSet.iterator();   
            List relist = new ArrayList();   
            int i = 0;   
            while(iterator.hasNext()){   
                relist.add(iterator.next().toString());   
                i++;   
            }   
            return relist;   
    }

    方法三: 回想考虑,既然要去重复,那干脆给List添加值的时候就不要添加重复值就可以啦!这样也省了效率

    List list=new ArrayList();
    if (!list.Contains("xxx"))
    {
         list.Add("xxx");
    }

    方法四: 双层循环

    List list = new ArrayList();
    for (int i = 0; i < list.size(); i++){//外循环是循环的次数
      for (int j = list.size() - 1 ; j > i; j--){//内循环是 外循环一次比较的次数
        if (list.get(i) == list.get(j)){
          list.remove(j);
        }
      }
    }

    方法五:

    • A.removeAll(B);
    • A.addAll(B);
  • 相关阅读:
    【NOIP2017】蚯蚓
    【CF407B】Long Path
    【NOIP2017】奶酪
    【NOIP2018】赛道修建(正解)
    【NOIP2018】旅行
    【SDOI2010】地精部落
    【NOIP2017】逛公园
    百度云网盘进行注销操作
    百度超级会员租借.我租给你。
    如何在dos中运行java中的jar包
  • 原文地址:https://www.cnblogs.com/daisyleamo/p/3137552.html
Copyright © 2011-2022 走看看