本節(jié)摘要:從整體概述Java集合框架
一、Java集合框架架構(gòu)圖
Java集合框架是Java為開(kāi)發(fā)者提供的工具類(lèi),集合框架被放置在 java.util.* 包下面,這些工具類(lèi)從更高層面為開(kāi)發(fā)者提供了數(shù)組、鏈表、樹(shù)、棧、隊(duì)列等數(shù)據(jù)結(jié)構(gòu),開(kāi)發(fā)者可以利用這些工具類(lèi)完成業(yè)務(wù)邏輯,基本上不需要對(duì)這些類(lèi)進(jìn)行擴(kuò)展,本系列文章主要講解Collection,Map兩部分內(nèi)容,下面對(duì)框架結(jié)構(gòu)進(jìn)行整體介紹。
1.1 Collection架構(gòu)
Collection框架主要分為三部分:List,Set,Queue,AbstractCollection是Collection的通用實(shí)現(xiàn),AbstractList,AbstractSet,AbstractQueue繼承它,這里相當(dāng)于是一個(gè)模板模式
List:帶索引的有序集合,允許有重復(fù)元素
Set:不能有重復(fù)元素的集合
Queue:模擬FIFO隊(duì)列
Collection繼承Iterable接口,它在java.lang.*下,該接口依賴(lài)Iterator接口,而Collection的遍歷是通過(guò)Iterator接口來(lái)實(shí)現(xiàn)的
1.2 Map架構(gòu)
Map結(jié)構(gòu)比Collection要簡(jiǎn)單些,數(shù)據(jù)以<K,V>映射的方式存儲(chǔ)在Map中,AbstractMap是Map的通用實(shí)現(xiàn),HashTable繼承自Dictionary,實(shí)現(xiàn)Map接口,雖然它是線(xiàn)程安全的,但是已經(jīng)很少使用了
二、總結(jié)
- Java集合框架主要分為兩大部分:Collection,Map,實(shí)際上這兩部分也是有關(guān)聯(lián)的,后續(xù)會(huì)講到,我們通常用的集合類(lèi)如:ArrayList,LinkedList,HashMap,HashSet等均是由以上兩大接口衍生而來(lái)
- Collection是通過(guò)Iterator來(lái)進(jìn)行遍歷的
- Arrays,Collections是集合工具類(lèi),封裝了一些通用方法