1. 代码写法:(这是针对元素为基本数据类型的集合)
针对引用类型元素去重,可根据元素内多个元素去重,见另一文:集合去重(元素为引用类型)--java 8 新特性
代码语言:javascript复制 /**
* 基本数据类型去重
*
* @param list
* @param <T>
* @return
*/
public static <T> List<T> deleteSame(List<T> list) {
return list.stream().distinct().collect(Collectors.toList());
}
2. 测试:
代码语言:javascript复制 List<String> strList = new ArrayList(){{add("我");}{add("你");}{add("他");}{add("他");}{add("他");}};
List<Integer> intList = new ArrayList(){{add(11);}{add(11);}{add(33);}{add(11);}};
System.out.print("n 去重前:n");
listFor(strList);
System.out.println("");
listFor(intList);
System.out.println("n 去重后:");
System.out.println(deleteSame(strList));
System.out.println(deleteSame(intList));
...
/**
* for循环
* @param list
* @param <T>
*/
public static <T> void listFor(List<T> list) {
list.forEach(each -> System.out.print(each " "));
}
运行结果: