Java爬坑 -- 判断两个数组是否存在相同元素 (内牛满面)

本文探讨了判断两个数组是否存在相同元素的两种方法:遍历比较与使用HashSet的retainAll函数求交集。通过对比,强调了分析问题寻找最优解及熟悉基础函数的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:判断两个数组是否存在相同元素

今天做一个数组添加操作,,但是要判断数据是否重复,,,头脑第一个想法就是遍历两个数组查询是否有重复,

然后就吧啦吧啦.....一通狂敲,如下:

 1        boolean has = false;
 2        String[] strOne= {"c","b","a","d"};
 3        String[] strTwo= {"a","b","d","g"};
 4        for (int i = 0; i < strOne.length; i++) {
 5            if (ArrayUtils.contains(strTwo, strOne[i])) {
 6                has = true;
 7                break;
 8             }
 9         }
10 
11         System.out.println(has )
12    
13            

写完之后莫名的不爽,我要到循环里面进行判断..........

然后在分析问题 ,判断两个数组是否存在相同元素 .........咦------倒吸一口冷气,这丫的不就是求交集么

交集的函数不就是retainAll

然后马上开始吧啦吧啦.......一通狂敲,如下:

1     boolean has = false;
2     String[] strOne= {"c","b","a","d"};
3     String[] strTwo= {"a","b","d","g"};
4     HashSet<String> set = new HashSet<>(Arrays.asList(strOne));
5     set.retainAll(Arrays.asList(strTwo));
6     if(set.size() > 0){
7         has =  true;
8     }

虽然一个九行一个八行 ,, 但是需要我们好好想一下,,,如果问题再复杂一下呢? 

一.条条大路通罗马,,,分析问题,,,找到最优

二.一些基础函数不用难免忘记

转载于:https://www.cnblogs.com/chuzihang/p/9214421.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值