大家好,又见面了,我是你们的朋友全栈君。
一、背景
1.在实战中list去重是非常频繁的,下面就讲讲它的三种用法。
二、第一种(原始代码去重)
1.测试类
public class DemoTest {
public static void main(String[] args) {
ArrayList<String> list = Lists.newArrayList("02","01","01","02","03");
System.out.println("原始的去重方法");
ArrayList<String> listTemp = Lists.newArrayList();
for (String e:list){
if (!listTemp.contains(e)){
listTemp.add(e);
}
}
System.out.println(listTemp);
}
}
2.结果
原始的去重方法
[02, 01, 03]
三、第二种方法
1.Set去重缺点是,元素是无序的
2.测试类
public class DemoTest {
public static void main(String[] args) {
ArrayList<String> list = Lists.newArrayList("02","01","01","02","03");
System.out.println("set去重");
Set<String> set = Sets.newHashSet(list);
System.out.println(set);
}
}
3.结果
set去重
[01, 02, 03]
四、第三种方法
1.测试类
public class DemoTest {
public static void main(String[] args) {
ArrayList<String> list = Lists.newArrayList("02","01","01","02","03");
System.out.println("函数式去重");
List<String> collect = list.stream().distinct().collect(Collectors.toList());
System.out.println(collect);
}
}
2.结果
函数式去重
[02, 01, 03]
五、结束
Always keep the faith!!!
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/141234.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...