方法3:HashSet去重(无序)
我们知道 HashSet 天生具备“去重”的特性,那我们只需要将 List 集合转换成 HashSet 集合就可以了,实现代码如下:
public class ListDistinctExample { public static void main(String[] args) { List<Integer> list = new ArrayList<Integer>() {{ add(1); add(3); add(5); add(2); add(1); add(3); add(7); add(2); }}; System.out.println("原集合:" + list); method_2(list); } /** * 使用 HashSet 去重 * @param list */ public static void method_2(List<Integer> list) { HashSet<Integer> set = new HashSet<>(list); System.out.println("去重集合:" + set); } }
以上程序执行的结果,如下所示:
此方法的实现代码较为简洁,但缺点是 HashSet 会自动排序,这样新集合的数据排序就和原集合不一致了,如果对集合的顺序有要求,那么此方法也不能满足当前需求。