1. 程式人生 > >collection知識點2

collection知識點2

Collection作為頂層集合介面,它不能直接建立物件,需要用多型的方式,通過父類引用指向子類物件的方式進行。

 

 

add方法,返回boolean型,表示是否將指定的元素追加到此列表的末尾了。且add會再集合中新增相應元素

例子:

Collection c = new ArrayList();
boolean b1 = c.add("ab"); //add中可以儲存各種物件
boolean b2 = c.add(100); //引數是基本資料型別,則儲存時先會自動裝箱
boolean b3 = c.add(new Student("張三",23));
boolean b4 = c.add("ab");

則返回b4是true,因為儲存允許重複。  

如果是set類:

Collection c2 = new HashSet();
c2.add("a");
boolean b = c2.add("a");
System.out.println(b); //原因是set類儲存不可重複,當重複時,返回false

因為set類不允許儲存重複,返回是false

所以,如果是List集合,則add方法一直會返回true;如果是Set集合儲存重複元素時,add方法會返回false。

 

 

用system.out.println(c)  時,返回的是 [具體的元素值] 的形式,因為ArrayList的父類的父類(看原始碼即可)集合的toString()被重寫了,而不會輸出Object的toString結果。

 

@SuppressWarnings({ "rawtypes", "unchecked" }) //原始型別不檢查   --》可減少警告

collectionXxx.java使用了未經檢查或不安全的操作.
注意:要了解詳細資訊,請使用 -Xlint:unchecked重新編譯.
java編譯器認為該程式存在安全隱患
溫馨提示:這不是編譯失敗,所以先不用理會,等學了泛型你就知道了