Java記錄 -52- 整體看Java Collection類集

來源:互聯網
上載者:User

Java記錄 -52- 整體看Java Collection類集
java.util包中包含了一些在java 2中新增加的最令人興奮的增強功能:類集。除了類集,java.util 還包含了支援範圍廣泛的函數的各種各樣的類和介面。對它們的應用程式套件括產生偽隨機碼數,對日期和時間的操作,觀測事件,對位集的操作以及標記字串。由於java.util具有許多特性,因此它是Java中最被廣泛使用的一個包。 下面詳細介紹下類集:一個類集(collection)是一組對象。Java的類集(collection)架構使你的程式處理對象組的方法標準化,設計成包含一組標準的介面。 演算法(Algorithms)是類集機制的另一個重要部分。演算法操作類集,它在Collections類中被定義為靜態方法。每一個類集類不必實現它自己的方案,演算法提供了一個處理類集的標準方法。 由類集架構建立的另一項是Iterator介面。一個迭代程式(iterator)提供了一個多用途的,標準化的方法,用於每次訪問類集的一個元素。因此迭代程式提供了一種枚舉類集內容(enumerating the contents of a collection)的方法。因為每個類集都實現Iterator,所以通過有Iterator定義的方法,任一類集類的元素都能被訪問到。 除了類集之外,架構定義了幾個映射介面和類。映射(Maps)儲存鍵/值對。儘管映射不是類集,但它們完全用類集整合,可以擷取映射的類集“視圖”(collection-view),該“視圖”包含了從儲存在類集中的映射得到的元素。所以選擇一個映射就可以將其當作一個類集類處理。 類集僅僅是提供了處理事情的一個更好的方法。 除了類集介面之外,類集也使用Comparator,Iterator和ListIterator介面。Comparator介面定義了兩個對象如何比較;Iterator和ListIterator介面枚舉類集中的對象。 類集介面提供的方法有可選擇性;可修改的類集支援可更改類集內容的方法,不可修改的類集則不支援。如果對一個不可修改的類集使用了更改類集內容的方法,將引發一個UnsupportedOperationException異常。所有內建的類集都是可修改的。 Collection介面是構造類集架構的基礎。它聲明所有類集都將擁有的核心方法。因為所有類集實現Collection,所以熟悉它的方法對於清楚地理解架構是必要的。 調用add()方法可以將對象加入類集。注意add()帶一個Object類型的參數。因為Object是所有類的超類,所以任何類型的對象都可以被儲存在一個類集中。然而原始類型不行。如果想儲存原始類型,則需要使用原始類型封裝器。可以通過調用addAll()方法將一個類集的全部內容增加到另一個類集中。可以通過調用remove()方法將一個對象刪除。為了刪除一組對象,可以調用 removeAll()方法。調用 retainAll()方法可以將除了一組指定的元素之外的所有元素刪除。為了清空類集,可以調用clear()方法。通過調用那個contains()方法,可以確定一個類集是否包含了一個指定的對象。為了確定一個類集是否包含了另一個類集的全部元素,可以調用containsAll()方法。當一個類集是空的時候,可以通過調用isEmpty()方法來予以確認。調用size()方法可以獲得類集中當前元素的個數。toArray()方法返回一個數組,這個數組包含了儲存在調用類集中的元素。通過在類集和數組之間提供一套路徑,可以充分利用這兩者的優點。一個更加重要的方法時iterator(),該方法對類集返回一個迭代程式。 Collection: 集合層次中的根介面,JDK沒有提供這個介面直接的實作類別。Set:不能包含重複的元素。SortedSet是一個按照升序排列元素的Set。List:是一個有序的集合,可以包含重複的元素。提供了按索引訪問的方式。Map:包含了key-value對。Map不能包含重複的key。SortedMap是一個按照升序排列key的Map。 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.