list對象去重
import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; public class ListUtils { /** * List去重,不打亂原來順序,泛型list對象 * 對象重寫hashCode和equals * @param <T> * @param list * @return */ public static <T> List<T> distinctBySetOrder(List<T> list){ Set<T> set = new HashSet<T>(); List<T> newList = new ArrayList<T>(); for(T t: list){ if(set.add(t)){ newList.add(t); } } return newList; } /** * List去重,可能打亂原來順序,泛型list對象 * 對象重寫hashCode和equals * @param list * @return */ public static <T> List<T> distinctBySet(List<T> list){ return new ArrayList<T>(new HashSet<T>(list)); } }