Java爬坑 -- 判斷兩個數組是否存在相同元素 (內牛滿面)


問題:判斷兩個數組是否存在相同元素

今天做一個數組添加操作,,但是要判斷數據是否重復,,,頭腦第一個想法就是遍歷兩個數組查詢是否有重復,

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

 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     }

雖然一個九行一個八行 ,, 但是需要我們好好想一下,,,如果問題再復雜一下呢? 

一.條條大路通羅馬,,,分析問題,,,找到最優

二.一些基礎函數不用難免忘記


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM