C語言中文網 目錄

Java Collection接口

< 上一頁Java集合類的概念 Java List集合下一頁 >

Collection 接口是 List 接口和 Set 接口的父接口,通常情況下不被直接使用。Collection 接口定義了一些通用的方法,通過這些方法可以實現對集合的基本操作。因為 List 接口和 Set 接口繼承自 Collection 接口,所以也可以調用這些方法。

本節將介紹 Collection 接口中常用的方法,如表 1 所示。

表1 Collection接口的常用方法
方法名稱 說明
boolean add(E e) 向集合中添加一個元素,E 是元素的數據類型
boolean addAll(Collection c) 向集合中添加集合 c 中的所有元素
void clear() 刪除集合中的所有元素
boolean contains(Object o) 判斷集合中是否存在指定元素
boolean containsAll(Collection c) 判斷集合中是否包含集合 c 中的所有元素
boolean isEmpty() 判斷集合是否為空
Iterator<E>iterator() 返回一個 Iterator 對象,用于遍歷集合中的元素
boolean remove(Object o) 從集合中刪除一個指定元素
boolean removeAll(Collection c) 從集合中刪除所有在集合 c 中出現的元素
boolean retainAll(Collection c) 僅僅保留集合中所有在集合 c 中出現的元素
int size() 返回集合中元素的個數
Object[] toArray() 返回包含此集合中所有元素的數組

例 1

經過前面的介紹,我們知道 Collection 是非常重要的一個接口,在表 1 中列出了其常用方法。本案例將編寫一個簡單的程序,演示如何使用 Collection 接口向集合中添加方法。具體實現代碼如下:
public static void main(Strmg[] args)
{
    ArrayList list1=new ArrayList();    //創建集合 iist1
    ArrayList list2=new ArrayList();    //創建集合 Iist2
    list1.add("one");    //向 list1 添加一個元素
    list1.add("two");    //向 list1 添加一個元素
    list2.addAll(list1);    //將 list1 的所有元素添加到 list2
    list2.add("three");    //向 list2 添加一個元素
    System.out.println("list2 集合中的元素如下:");
    Iterator it1=list2.iterator();
    while(it1.hasNext())
    {
        System.out.print(it1.next()+"、");
    }
}

由于 Collection 是接口,不能對其實例化,所以上述代碼中使用了 Collection 接口的 ArrayList 實現類來調用 Collection 的方法。add() 方法可以向 Collection 中添加一個元素,而調用 addAll() 方法可以將指定 Collection 中的所有元素添加到另一個 Collection 中。

代碼創建了兩個集合 list1 和 list2,然后調用 add() 方法向 list1 中添加了兩個元素,再調用 addAll() 方法將這兩個元素添加到 list2 中。接下來又向 list2 中添加了一個元素,最后輸出 list2 集合中的所有元素,結果如下:
list2 集合中的元素如下:
one、two、three、

例 2

創建一個案例,演示 Collection 集合中 size()、remove() 和 removeAll() 方法的應用。具體代碼如下:
public static void main(String[] args)
{
    ArrayList list1=new ArrayList();    //創建集合 list1
    ArrayList list2=new ArrayList();    //創建集合 list2
    list1.add("one");
    list1.add("two");
    list1.add("three");
    System.out.println("list1 集合中的元素數量:"+list1.size());    //輸出list1中的元素數量
    list2.add("two");
    list2.add("four");
    list2.add("six");
    System.out.println("list2 集合中的元素數量:"+list2.size());     //輸出list2中的元素數量
    list2.remove(2);    //刪除第 3 個元素
    System.out.println("\nremoveAll() 方法之后 list2 集合中的元素數量:"+list2.size());
    System.out.println("list2 集合中的元素如下:");
    Iterator it1=list2.iterator();
    while(it1.hasNext())
    {
        System.out.print(it1.next()+"、");
    }
    list1.removeAll(list2);
    System.out.println("\nremoveAll() 方法之后 list1 集合中的元素數量:"+list1.size());
    System.out.println("list1 集合中的元素如下:");
    Iterator it2=list1.iterator();
    while(it2.hasNext())
    {
        System.out.print(it2.next()+"、");
    }
}

list2 集合在調用 remove(2) 方法刪除第 3 個元素之后剩下了 two 和 four。list1.removeAll(list2) 語句會從 list1 中將 list1 和 list2 中相同的元素刪除,即刪除 two 元素。最后輸出結果如下:
list1 集合中的元素數量:3
Iist2 集合中的元素數量:3
remove() 方法之后 list2 集合中的元素數量:2
list2 集合中的元素如下:
two、four、
removeAH() 方法之后 list1 集合中的元素數量:2
list1 集合中的元素如下:
one、 three、

注意:retainAll() 方法的作用與 removeAll() 方法相反,即保留兩個集合中相同的元素,其他全部刪除。
< 上一頁Java集合類的概念 Java List集合下一頁 >

精美而實用的網站,提供C語言、C++、STL、Linux、Shell、Java、Go語言等教程,以及socket、GCC、vi、Swing、設計模式、JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo
极速pk10开户