|
前言
Java集合是java提供的工具包,包含了常用的數據結構:集合、鏈表、隊列、棧、數組、映射等。Java集合工具包位置是java.util.*
Java集合主要可以劃分為4個部分:List列表、Set集合、Map映射、工具類(Iterator迭代器、Enumeration枚舉類、Arrays和Collections)。
0df431adcbef76096709930527dda3cc7cd99e2d.jpg
Collection接口、子接口以及實現類
Collection接口
是List、Set和Queue接口的父接口
定義了可用于操作List、Set和Queue的方法-增刪改查:
List接口
List是元素有序并且可以重復的集合,被稱為序列
List可以精確的控制每個元素的插入位置,或刪除某個位置元素
List接口的常用子類:
ArrayList
LinkedList
Vector
Stack
Set接口
Set接口中不能加入重復元素,無序
Set接口常用子類:
散列存放:HashSet
有序存放:TreeSet
Map和HashMap
Map接口
Map提供了一種映射關系,其中的元素是以鍵值對(key-value)的形式存儲的,能夠實現根據key快速查找value
Map中的鍵值對以Entry類型的對象實例形式存在
鍵(key值)不可重復,value值可以
每個建最多只能映射到一個值
Map接口提供了分別返回key值集合、value值集合以及Entry(鍵值對)集合的方法
Map支持泛型,形式如:Map
HashMap類
HashMap是Map的一個重要實現類,也是最常用,基于哈希表實現
HashMap中的Entry對象是無序排列的
Key值和Value值都可以為null,但是一個HashMap只能有一個key值為null的映射(key值不可重復)
Comparable和Comparator
Comparable接口——可比較的
實現該接口表示:這個類的實例可以比較大小,可以進行自然排序
定義了默認的比較規則
其實現類需要實現compareTo()方法
compareTo()方法返回正數表示大,負數表示小0表示相等
Comparator接口——比較工具接口
用于定義臨時比較規則,而不是默認比較規則
其實現類需要實現compare()方法
Comparable和Comparator都是Java集合框架的成員
Iterator接口
集合輸出的標注你操作
標準做法,使用Iterator接口
操作原理:
Iterator是專門的迭代輸出接口,迭代輸出就是將元素一個個進行判斷,判斷其是否有內容,如果有內容則把內容取出。
總結
024f78f0f736afc3646ddea1b419ebc4b6451294.jpg
集合的作用
在類的內部,對數據進行組織;
簡單而快速的搜索大數量的條目;
有的集合接口,提供了一系列排列有序的元素,并且可以在序列中間快速的插入或者刪除有關元素;
有的集合接口,提供了映射關系,可以通過關鍵字(key)去快速查找對應的唯一對象,而這個關鍵字額可以是任意類型。
與數組的對比—————為何選擇集合而不是數組
數組的長度固定,集合長度可變
數組只能通過下標訪問元素,類型固定,而有的集合可以通過任意類型查找所映射的具體對象。
整理的集合框架思維導圖
個人整理的Java集合框架思維導圖,動態維護。導出的圖片無法查看備注的一些信息,所以需要文件的童鞋,可以留下郵箱,即可獲取更多資料。
|
|