Java集合系列01-Java集合概述

1.Java集合基本概念

  在編程中,經常須要集中存放多個數據。從傳統意義上講,數組是咱們的一個很好的選擇,前提是咱們事先已經明確知道咱們將要保存的對象的數量,由於數組長度在初始化時指定,意味着只能保存定長的數據。一旦在數組初始化時指定了這個數組長度,這個數組長度就是不可變的,若是咱們須要保存一個能夠動態增加的數據(在編譯時沒法肯定具體的數量),java的集合類就是一個很好的設計方案了。html

  集合類主要負責保存、盛裝其餘數據,所以集合類也被稱爲容器類。因此的集合類都位於java.util包下,包含了經常使用的數據結構:集合、鏈表、隊列、棧、數組、映射等。後來爲了處理多線程環境下的併發安全問題,java5還在java.util.concurrent包下提供了一些多線程支持的集合類。java

2.Java集合關係介紹

Java能夠劃分3個部分:Collection(List、Set)、Map、和集合工具類(Iterator迭代器、Enumeration枚舉類、Arrays和Collections)編程

  

 

 


 

 

 

 

  1. Collection是一個集合,包含了集合的基本操做方法和屬性,它包含List和Set兩大分支:數組

    (01)List是一個有序的隊列,每個元素都有它的索引。第一個元素的索引值是0。它的實現類有LinkedList, ArrayList, Vector, Stack。安全

    (02)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對象,實現這個Iterable接口的對象容許使用foreach進行遍歷,也就是說,全部的Collection集合對象都具備"foreach可遍歷性"。而ListIterator是專門爲遍歷List而存在的。函數

  4. Enumeration是JDK 1.0引入的抽象類。做用和Iterator同樣,也是遍歷集合;可是Enumeration的功能要比Iterator少。在上面的框圖中,Enumeration只能在Hashtable, Vector, Stack中使用。工具

  5.Arrays和Collections是操做數組、集合的兩個工具類。

參考:

https://www.cnblogs.com/littlehann/p/3690187.html

相關文章
相關標籤/搜索