这里分享下我做过的集合去重处理!顾名思义就是把一个集合处理了,然后得到一个新的集合,这个集合里面的元素是没有重复的!下面就是贴出的代码啦!
public class UniqueListUtils<T> { public static <T> List<T> removeDuplicateWithList(List<T> list) { Set<T> set = new HashSet<T>(); List<T> newList = new ArrayList<T>(); for (Iterator<T> iter = list.iterator(); iter.hasNext();) { T element = iter.next(); if (set.add(element)) newList.add(element); } return newList; } }
?这里面的T就是传进去的任意对象类型拉,假如你要传入一个List<String>的集合,你的T就是String啦。当然这个方法你只需要调用就行了,随便传入一个已知的list集合进去就行啦!
这里面主要用到的就是hashSet里面的算法啦,hashSet自带了一个add方法,返回的是一个boolean值,他会自动根据hashcode来判断是否有相同值啦!这种方法比自己做if判断来得效率要高很多的!
希望能帮到你!
原文:http://satan-conjuror.iteye.com/blog/2293153