JCF簡單總結

作者: fragrancloud  來源: 博客園  發布時間: 2010-11-02 14:27  閱讀: 1013 次  推薦: 0   原文鏈接   [收藏]  
摘要:JCF(Java Collections Framework)即Java中運用最為廣泛的Java集合類,它是Java對常用數據結構的封裝,包含于java.util包中。

  JCF(Java Collections Framework)即Java中運用最為廣泛的Java集合類,它是Java對常用數據結構的封裝,包含于java.util包中。所謂集合就是在類內部對數據進行組織的載體,Java API提供了一系列類的實例,用來在程序中存放對象,Java集合將接口和實現進行了分離。其接口與類的結構如下:

JCF接口結構

Iterable

|__Collection

|__List

|__Set

|__SortedSet

|__Queue

Map

|__SortedMap

Iterator

|__ListIterator

RandomAccess

 

JCF類的結構

AbstractCollection

|__AbstractList

|__AbstractSequentialList

|__LinkedList

|__ArrayList

|__AbstractSet

|__HashSet

|__TreeSet

|__AbstractQueue

|__PriorityQueue

AbstractMap

|__HashMap

|__TreeMap

 

  由上述結構我們可以看出,整個Java集合類中主要包括了三個類型:集合(Set)、列表(List)和映射(Map)

  集合:可形象的理解為是一個袋子,里面放的是一個個對象,它的無序且沒有重復的;

  列表:可理解為是串在一條繩上的螞蚱,排列有一定的順序且元素可重復;

  映射:可理解為是一張n行兩列的表,由一個鍵值對組成,其中key值不能重復

  不過在實際運用中,我們有時也需要進行對集合中的元素進行排序輸出,或直接定位一個元素等操作,因而也就出現了實現了這三個接口的Java中的常用集合類

  1.ArrayList

ArrayList是Java中最為常用也是最為重要的一個類。它實現了一個大小可變的數組,我們知道在Java中數組的長度一旦聲明就無法進行更改,因而對于一些不可預知長度的數組聲明就變得非常麻煩,空間小了則無法存儲后來添加的數據,空間大了則浪費資源。ArrayList的出現無疑給這種話麻煩畫上了一個句號,它可以隨著數據量的增長由Java內部機制自動地調整數組容量,做到資源的合理分配

  2.LinkedList

LinkedList實現了數據結構中的鏈表(包括單向和雙向鏈表),它通過前驅與后繼結點將一系列元素有序的鏈接在一起,可以在任何位置高效地插入和刪除元素

  3.HashSet

HashSet就是一個可以快速定位到某個元素的集合,其集合內部元素是根據元素的散列碼存放的,因而能夠進行快速定位,要求其中的元素都覆寫了hashCode方法

  4.TreeSet

TreeSet是一個對中元素進行過排序的集合,要求其中的元素都實現了Comparable接口并覆寫compareTo方法

  5.EnumSet

EnumSet是一個只包含枚舉類型的集合

  6.LinkedHashSet

LinkedHashSet是一個可以記住元素被插入順序的集合

  7.PriorityQueue

PriorityQueue是一個可以高效的移除最小元素的集合

  8.HashMap

HashMap是一中通過散列碼存儲鍵值關聯的數據結構

  9.TreeMap

TreeMap存儲鍵值有序的Map集合

  10.EnumMap

EnumMap存儲鍵值屬于枚舉型的Map集合

0
0
 
標簽:java JCF
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()