List 去重两种方式:stream(需要JDK1.8及以上)、HashSet

1、使用Stream 方法 使用JDK1.8及以上
复制代码
  /**
     * Java合并两个List并去掉重复项的几种做法
     * @param args
     */
    public static void main(String[] args) {

        String[] str1 = {"1", "2", "3", "4", "5", "6"};
        List<String> list1 = new ArrayList<>(Arrays.asList(str1));

        String[] str2 = {"4", "5", "8", "10", "3"};
        List<String> list2= new ArrayList<>(Arrays.asList(str2));
        // 去重信息
        List<String> collect= Stream.of(list1,list2)
                .flatMap(Collection::stream)
                .distinct()
                .collect(Collectors.toList());
        for (String str:collect) {
           log.info("测试结果:"+str);
        }
}

运行结果如下:

2、HashSet集合的方式进行去重

复制代码
      /**
     * Java合并两个List并去掉重复项的几种做法
     * @param args
     */
    public static void main(String[] args) {
        String[] str1 = {"1", "2", "3", "4", "5", "6"};
        List<String> list1 = new ArrayList<>(Arrays.asList(str1));

        String[] str2 = {"4", "5", "8", "10", "3"};
       log.info("=====================HashSet去重操作======================");
        Set<String> set = new HashSet<>(list1);
        set.addAll(list2);
        List<String> list = new ArrayList<>(set);
        log.info("hashSet去重:"+list);
   }

运行结果如下:

相关推荐
yuweiade11 分钟前
新版 WSL2 2.0 设置 Windows 和 WSL 镜像网络教程
windows
测试人社区—667939 分钟前
当代码面临道德选择:VR如何为AI伦理决策注入“人性压力”
网络·人工智能·python·microsoft·vr·azure
FreeBuf_1 小时前
黑客涉嫌兜售Windows远程桌面服务0Day漏洞利用程序
windows·0day漏洞
要开心吖ZSH1 小时前
(三)OpenClaw 云端服务器控制本地 Windows 浏览器完整配置指南(SSH方式)
运维·服务器·windows·openclaw
卤炖阑尾炎2 小时前
Web 技术基础与 Nginx 网站环境部署全解析
前端·nginx·microsoft
知智前沿3 小时前
OpenClaw 本地部署详细教程(Windows+Mac 双系统)
windows·macos
劳埃德福杰3 小时前
Windows电脑安装双系统如何切换默认开机系统
运维·windows·电脑
宝桥南山3 小时前
GitHub Copilot - 尝试一下Plan mode
microsoft·微软·github·aigc·copilot·ai编程
MIXLLRED3 小时前
解决:Ubuntu系统引导修复操作步骤
linux·windows·ubuntu
阿昭L4 小时前
Windows内核驱动开发构建选项
windows·驱动开发·内核