对list集合中的重复值进行处理,大部分是采用两种方法,spa
一种是用遍历list集合判断后赋给另外一个list集合,.net
另外一种是用赋给set集合再返回给list集合。 code
方法1:set集合去重,不打乱顺序blog
List<String> list = new ArrayList<String>(); list.add("aaa"); list.add("bbb"); list.add("aaa"); list.add("aba"); list.add("aaa"); //set集合去重,不打乱顺序 Set<String> set = new HashSet<String>(); List<String> newList = new ArrayList<String>(); for (String cd : list) { if (set.add(cd)) { newList.add(cd); } } System.out.println("去重后的集合: " + newList);
方法2:遍历后判断赋给另外一个list集合class
//遍历后判断赋给另外一个list集合 List<String> newList = new ArrayList<String>(); for (String cd : list) { if (!newList.contains(cd)) { newList.add(cd); } } System.out.println("去重后的集合: " + newList);
方法3:set去重List
//set去重 Set<String> set = new HashSet<String>(); List<String> newList = new ArrayList<String>(); set.addAll(list); newList.addAll(set); System.out.println("去重后的集合: " + newList);
方法4:set去重(代码缩减为一行)遍历
//set去重(缩减为一行) List<String> newList = new ArrayList<String>(new HashSet<String>(list)); System.out.println("去重后的集合: " + newList);
方法5:去重而且按照天然顺序排列方法
//去重而且按照天然顺序排列 List<String> newList = new ArrayList<String>(new TreeSet<String>(list)); System.out.println("去重后的集合: " + newList);
文章来源:http://blog.csdn.net/cs6704/article/details/50158373集合