簡單理解 addAll(Collection c) 方法


理解這個方法、小白也是耗盡所有資源、總結下來的幾句話:

先上代碼:(附另外圖)

 1 main(){
 2    Set<Integer> set = new HashSet();
 3    Set<Integer> set2 = new HashSet();
 4    set.add(1);
 5    set.add(2);
 6    set.add(3);
 7    System.out.println(set);//運行結果:[1,2,3]
 8    set2.add(3);
 9    set2.add(4);
10    set2.add(5);                            
11    set2.add(6);
12    System.out.println(set2);//運行結果: [3,4,5,6]
13 
14    set.addAll(set2);
15    System.out.println(set);//運行結果:[1,2,3,4,5,6]      
16 }

 

當然、這一塊涉及的知識很廣泛、在這里小白只是簡單表述 addAll(Collection<? extends E> c)  方法;

 

回歸正題:

       這個方法、如圖的結果。很好理解,將一個泛型集合添加到另外一個泛型集合當中去、那么當這個目標集合【即:被添加的集合】的元素和添加的集合內的元素發生重復、則不將重復的這個元素添加到目標集合中;

       再比如、將A添加到B集合中、A中的元素有[1,2,3]、B中有[3,4,5,6];此時A集合的所有元素想要添加到B集合中、首先看兩個集合的泛化類型是否一致、不一致將會在set.addAll(set2);處編譯報錯!如果泛化類型一致、則考慮兩個集合中是否有重復的元素、如果沒有重復的元素那么A中的所有元素都會添加到B集合中、存在重復元素、則只保留目標集合的重復元素!相當於數學的交並集那塊知識、


免責聲明!

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



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