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