Java集體系列01之 總體框架
Java集體是Java提供的工具包,包含了常用的資料結構:集合、連結串列、佇列、棧、陣列、對映等。Java集合工具包位置是java.util.*
Java集合主要可以劃分為4個部分:List列表、Set集合、Map對映、工具類(Iterator迭代器、Enumeration列舉類、Arrays和Collections)
java集合工具包框架圖(如下):
大致說明:
看上面的框架圖,先抓住它的主幹,即Collection和Map。
1.Collection是一個介面,是高度抽象出來的集合,它包含了集合的基本操作和屬性。
Collection包含了List和Set兩大分支。
List是一個有序的佇列,每一個元素都有它的索引。第一個元素的索引值是0。List的實現類有LinkedList, ArrayList,Vector,Stack。
Set是一個不允許有重複元素的集合。
Set的實現類有HashSet和TreeSet。HashSet依賴於HashMap.它實際上是通過HashMap實現的;TreeSet依賴於TreeMap,它實際上是通過TreeMap實現的。
2.Map是一個對映介面,即key-value鍵值對。Map中的每一個元素包含“一個key”和”key對應的value”。
AbstractMap是抽象類,它實現了Map介面中的大部分API。而HashMap,TreeMap,WeekHashMap都是繼承於AbstractMap。
Hashtable雖然繼承於Dictionary,但它實現了Map介面。
接下來,再看Iterator。它是遍歷集合的工具,即我們通常通過Iterator迭代器來遍歷集合。我們說Collection依賴於Iterator,是因為Collection的實現類都要實現Iterator()函式,返回一個Iterator物件。
ListIterator是專門為遍歷List而存在的。
再看Enumeration,它是JDK1.0引入的抽象類。作用和Iterator一樣,也是遍歷集合;但是Enumeration的功能要比Iterator少。在上面的框架圖中,Enumeration只能在Hashtable,Vector,Stack中使用。
最後,看Arrays和Collectons。它們是運算元組、集合的兩個工具類。
有了上面的整體框架之後,我們接下來對每個類分別進行分析。
相關推薦
Java集體系列01之 總體框架
Java集體是Java提供的工具包,包含了常用的資料結構:集合、連結串列、佇列、棧、陣列、對映等。Java集合工具包位置是java.util.* Java集合主要可以劃分為4個部分:List列表、Set集合、Map對映、工具類(Iterator迭代器、En
Java 集合系列01之 總體框架 (依賴JDK1.6.0_45)
Java集合是java提供的工具包,包含了常用的資料結構:集合、連結串列、佇列、棧、陣列、對映等。Java集合工具包位置是java.util.* Java集合主要可以劃分為4個部分:List列表、Set集合、Map對映、工具類(Iterator迭代器、Enumeration列舉類、Arrays和Co
Java 集合系列01之 總體框架
Java集合是java提供的工具包,包含了常用的資料結構:集合、連結串列、佇列、棧、陣列、對映等。Java集合工具包位置是java.util.*Java集合主要可以劃分為4個部分:List列表、Set集合、Map對映、工具類(Iterator迭代器、Enumeration列舉類、Arrays和Collec
Java 集合系列01之 總體學習
Java 集合系列01之 總體框架 Java集合是java提供的工具包,包含了常用的資料結構:集合、連結串列、佇列、棧、陣列、對映等。Java集合工具包位置是java.util.* Java集合主要可以劃分為4個部分:List列表、Set集合、Map對映、工具類(Iterator迭代器、
【Java】 集合系列01(總體框架)
Java集合是Java提供的工具包,包含了常用的資料結構:集合、連結串列、佇列、棧、陣列、對映等。 Java集合工具包的位置是Java.util.*。 Java集合主要可以劃分為四個部分:List列表、Set集合、Map對映、工具類(Iterator迭代器、
Java Web系列01---HTML
pan 開始 普通 sans height 網頁 後綴名 Language 水平線 一、HTML概述 HTML,超文本標記語言,hyper text markup language,用於創建網頁。 1)名詞解釋 超文本:比普通文本功能強大,可以描述文本的字體、顏色,可以
java集合系列——Set之HashSet和TreeSet介紹(十)
最大 ... gpo 鏈表 key 同步 中大 nds set接口 一.Set的簡介Set是一個不包含重復元素的 collection。更確切地講,set 不包含滿足 e1.equals(e2) 的元素。對 e1 和 e2,並且最多包含一個為 null 的元素。 Set的類
Java基礎系列--集合之ArrayList
邏輯結構 完全 必須 () abs 數組使用 就會 而已 自減 原創作品,可以轉載,但是請標註出處地址:http://www.cnblogs.com/V1haoge/p/8494618.html 一、概述 ArrayList是Java集合體系中最常使用,也是最簡單的集
java集合系列01--ArrayList
以下幾篇文章都是對java集合的一個介紹,這些文章並非都是我的原創,主要是集合了各種途徑獲取的一個總結。對於集合,我們主要從以下四點關注: 1.是否允許為空; 2.是否允許重複資料; 3.是否有序,有序是指讀取順序與存放順序是否一致; 4.是否執行緒安全。 ArrayList
Java 集合系列02之 Collection架構(JDK1.6.0_45)
首先,我們對Collection進行說明。下面先看看Collection的一些框架類的關係圖: Collection是一個介面,它主要的兩個分支是:List 和 Set。 List和Set都是介面,它們繼承於Collection。List是有序的佇列,List中可以
#Java 集合系列02之 Collection架構
概要 首先,我們對Collection進行說明。下面先看看Collection的一些框架類的關係圖; Collection是一個介面,它主要的兩個分支是:List 和 Set。 List和Set都是介面,它們繼承於Collection。List是有序的佇列,List中可以有重複的元素;而
Java多執行緒之Executor框架
在前面的這篇文章中介紹了執行緒池的相關知識,現在我們來看一下跟執行緒池相關的框架--Executor。 一.什麼是Executor 1.Executor框架的兩級排程模型 在HotSpot VM的執行緒模型中,Java執行緒(java.lang.Thread)被一對一對映為本地作業系統執
Java 集合系列03之 ArrayList詳細介紹
ArrayList做為List介面中最常用的實現類,必須掌握。 一、ArrayList簡介 與Java中的陣列相比ArrayList的容量可以動態增加。它繼承與AbstractList,實現了List, RandomAccess, Cloneable, java.io.Serializable 和Vec
Java 集合系列13之 WeakHashMap詳細介紹(源碼解析)和使用示例
ted 常量 虛擬機 分享圖片 deep app default maximum obj 概要這一章,我們對WeakHashMap進行學習。我們先對WeakHashMap有個整體認識,然後再學習它的源碼,最後再通過實例來學會使用WeakHashMap。第1部分 WeakHa
Java 集合系列06之 List總結
List 是一個介面,它繼承於Collection的介面。它代表著有序的佇列。 AbstractList 是一個抽象類,它繼承於AbstractCollection。AbstractList實現List介面中除size()、get(int locati
探究Java中的final關鍵字--------Java的系列學習之路(12)
前言---- 國慶回家悠閒了七天,沒帶電腦,今天是軍訓的第一天(大三才入學軍訓,沒誰了),今晚趁教官去本部看匯演免訓一晚上,不過坑還是要補的,就出門奔教室了。歡迎轉載,轉載請註明來處 1.final用來修飾類,方法,變數 a.修飾類 我們用final修飾類,表明這
探究Java的介面和抽象類--------Java的系列學習之路(12)
前言—— 今天第二天軍訓,訓得有點累,但是訓完整個人感覺很舒服,之前太久沒運動讓整個人感覺起來都很沒有 活力~ 注:歡迎轉載,轉載請註明來處 目錄 一.抽象類 一.抽象類 a.要了解抽象類之前,我們需要先知道什麼是抽象方法? 抽象方法就是方法前面加
探究Java中的4種訪問許可權--------Java的系列學習之路(14)
前言—— 今天軍訓的第四天,早上下了小雨,摸魚了一上午,下午練軍體拳。想寫的內容很多,突然不知道今晚總結什麼,最終決定寫個基本但是非常重要的部分。 歡迎轉載,轉載請註明來處。 在Java中有4種訪問許可權關鍵字,分別是public,private,protected,
探究Java中的類和繼承--------Java的系列學習之路(15)
前言—— 今天是軍訓的第5天,昨天打了一天的軍體拳(哈哈哈,好好看本篇博文,不然博主一套軍體拳下去你可能會殘疾 :) 明天是最後一天了,今晚繼續做自己手頭上的事,避免碌碌無為。今天講解的內容——類和繼承,也是跟上一篇一樣,基礎且重要。 第5天沒把這篇文章寫完,今天第六
Java 集合系列08之 List總結(LinkedList, ArrayList等使用場景和效能分析)
1 import java.util.*; 2 import java.lang.Class; 3 4 /* 5 * @desc 對比ArrayList和LinkedList的插入、隨機讀取效率、刪除的效率 6 * 7 * @author skywang 8 */ 9 public