Java集合框架是非常普遍使用,也是非常重要的部分,同時也是很基礎(chǔ)的部分,熟練掌握很重要,它對于數(shù)據(jù)的操作提供了良好的接口,下面將從整個集合框架的體系介紹重要的集合框架類,使用方法,以及內(nèi)部原理。

一、簡介:

1、集合框架分兩大類(接口):

  • Collection:存儲單個數(shù)據(jù)或者對象。


    • |-HashSet:基于Hash+數(shù)組+鏈表實現(xiàn)的Set。

    • |-TreeSet:一個基于TreeMap實現(xiàn)的Set。

    • |-EnumSet:

    • |-LinkedHashSet:一個基于LinkedHashMap實現(xiàn)的Set。

    • |-JumboEnumSet

    • |-RegularEnumSet


    • |-ArrayDeque:基于數(shù)組實現(xiàn)的尾插隊列(包含head,tail頭尾指針).

    • |-PriorityQueue:基于數(shù)組的自排序優(yōu)先級隊列(基于數(shù)組實現(xiàn)存儲的二叉樹堆排)。

    • |-LinkedList :基于鏈表的List

    • |-ArrayList :基于數(shù)組的List

    • |-SubList:一個List的視圖

    • |-Vector:一個線程安全的List


    • |-Stack:


    • |-List:列表:

    • |-Queue:隊列 ,通常作為數(shù)據(jù)存儲結(jié)構(gòu),不作為操作容器。集合框架中應(yīng)用比較少,主要在在并發(fā)包(java.util.concurrent)中實現(xiàn)的阻塞隊列(消息隊列)。

    • |-Set:一個不允許重復(fù)數(shù)據(jù)的集合

  • Map:存儲一組K-V鍵值對。


    • |-LinkedHashMap:基于HashMap實現(xiàn)的雙向鏈表。

    • |-HashMap:基于Hash+數(shù)組+鏈表實現(xiàn)的Map。

    • |-HashTable:基于Hash+數(shù)組+鏈表實現(xiàn)的線程安全(sync)Map。

    • |-

      網(wǎng)友評論