java集合框架知識總結1

 說明:先從整體介紹了Java集合框架包含的接口和類,然後總結了集合框架中的一些基本知識和關鍵點,並結合實例進行簡單分析。

 

1、綜述

        所有集合類都位於java.util包下。集合中只能保存對象(保存對象的引用變量)。(數組既可以保存基本類型的數據也可以保存對象)。

       當我們把一個對象放入集合中後,系統會把所有集合元素都當成Object類的實例進行處理。從JDK1.5以後,這種狀態得到了改進:可以使用泛型來限制集合裏元素的類型,並讓集合記住所有集合元素的類型(參見具體泛型的內容)。

 

    Java的集合類主要由兩個接口派生而出:CollectionMap,Collection和Map是Java集合框架的根接口,這兩個接口又包含了一些接口或實現類。

 

image

 

Set和List接口是Collection接口派生的兩個子接口,Queue是Java提供的隊列實現,類似於List。

 

image

 

Map實現類用於保存具有映射關係的數據(key-value)。

 

Set、List和Map可以看做集合的三大類。

     List集合是有序集合,集合中的元素可以重複,訪問集合中的元素可以根據元素的索引來訪問。

     Set集合是無序集合,集合中的元素不可以重複,訪問集合中的元素只能根據元素本身來訪問(也是不能集合裏元素不允許重複的原因)。

     Map集合中保存Key-value對形式的元素,訪問時只能根據每項元素的key來訪問其value。

 

對於Set、List和Map三種集合,最常用的實現類分別是HashSet、ArrayListHashMap三個實現類。(併發控制的集合類,以後有空研究下)。

 

2、Collection接口

     Collection接口是List、Set和Queue接口的父接口,同時可以操作這三個接口。

Collection接口定義操作集合元素的具體方法大家可以參考API文檔,這裏通過一個例子來說明Collection的添加元素、刪除元素、返回集合中元素的個數以及清空集合元素的方法。

複製代碼
public class TestCollection
{
public static void main(String[] args)
{
Collection c = new ArrayList();
//添加元素
c.add("孫悟空");

//雖然集合裏不能放基本類型的值,但Java支持自動裝箱
c.add(6);


System.out.println("c集合的元素個數爲:" + c.size());

     //刪除指定元素
c.remove(6);


     System.out.println("c集合的元素個數爲:" + c.size());
//判斷是否包含指定字符串
System.out.println("c集合的是否包含孫悟空字符串:" + c.contains("孫悟空"));


c.add("輕量級J2EE企業應用實戰");

System.out.println("c集合的元素:" + c);

     Collection books = new HashSet();

books.add("輕量級J2EE企業應用實戰");
books.add("Struts2權威指南");

System.out.println("c集合是否完全包含books集合?" + c.containsAll(books));

//用c集合減去books集合裏的元素
c.removeAll(books);


System.out.println("c集合的元素:" + c);

//刪除c集合裏所有元素
c.clear();


System.out.println("c集合的元素:" + c);

//books集合裏只剩下c集合裏也同時包含的元素
books.retainAll(c);


System.out.println("books集合的元素:" + books);
}
}
複製代碼


 

程序輸出結果:

c集合的元素個數爲:2 
c集合的元素個數爲:1 
c集合的是否包含孫悟空字符串:true 
c集合的元素:[孫悟空, 輕量級J2EE企業應用實戰] 
c集合是否完全包含books集合?false 
c集合的元素:[孫悟空] 
c集合的元素:[] 
books集合的元素:[]

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章