Java面試知識點(二十八)Java集合框架

一、集合框架圖

https://images2015.cnblogs.com/blog/249993/201611/249993-20161122113410534-705560500.jpg在這裏插入圖片描述

二、集合框架的說明

  1. 所有集合類都位於 java.util 包下。Java 的集合類主要由兩個接口派生而出:Collection 和 Map,Collection 和 Map 是 Java 集合框架的根接口,這兩個接口又包含了一些子接口或實現類。
  2. Set、List 和 Map 可以看做集合的三大類:
    • List 集合是有序集合,集合中的元素可以重複,訪問集合中的元素可以根據元素的索引來訪問。
    • Set 集合是無序集合,集合中的元素不可以重複,訪問集合中的元素只能根據元素本身來訪問(也是集合裏元素不允許重複的原因)。
    • Map 集合中保存 Key-value 對形式的元素,訪問時只能根據每項元素的 key 來訪問其 value

三、集合框架詳細說明

1、Collection 是一個接口,是高度抽象出來的集合,它包含了集合的基本操作和屬性。Collection 包含了 List 和 Set 兩大分支。
(1)List 是一個 有序的隊列,每一個元素都有它的索引。第一個元素的索引值是 0。List 的實現類有 LinkedList, ArrayList, Vector, Stack。

(2)Set 是一個不允許有重複元素的集合。Set 的實現類有 HastSet 和 TreeSet。 HashSet 依賴於 HashMap,它實際上是通過 HashMap 實現的;TreeSet 依賴於 TreeMap,它實際上是通過 TreeMap 實現的。

2、Map 是一個映射接口,即 key-value 鍵值對。Map 中的每一個元素包含 “一個 key” 和 “key 對應的 value”。AbstractMap 是個抽象類,它實現了 Map 接口中的大部分 API。而 HashMap,TreeMap,WeakHashMap 都是繼承於 AbstractMap。Hashtable 雖然繼承於 Dictionary,但它實現了 Map 接口。

3、接下來,再看 Iterator。它是遍歷集合的工具,即我們通常通過 Iterator 迭代器來遍歷集合。我們說 Collection 依賴於 Iterator,是因爲 Collection 的實現類都要實現 iterator () 函數,返回一個 Iterator 對象。ListIterator 是專門爲遍歷 List 而存在的。

4、再看 Enumeration,它是 JDK 1.0 引入的抽象類。作用和 Iterator 一樣,也是遍歷集合;但是 Enumeration 的功能要比 Iterator 少。在上面的框圖中, Enumeration 只能在 Hashtable, Vector, Stack 中使用。

5、最後,看 Arrays 和 Collections。它們是操作數組、集合的兩個工具類。

參考:https://www.cnblogs.com/xiaoxi/p/6089984.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章