(此圖內容不全,將就看)
「集合框架」主要由一組用來操作物件的介面組成。
不同介面描述一組不同資料型別。其他的組成部分還有抽象類和具體類。
我們這裡暫時理解集合框架的三大介面。(collection/map/iterator)
一、collection介面是一組可以重複的物件。set介面和list介面繼承了collection。
1、set介面不允許重複,其中儲存的元素是無序的,也可以說set中的元素沒有索引;
set介面有2個實現類:
----hashset:底層是雜湊碼值,基於hashmap實現的。
----treeset:將元素進行了排序,並且沒有重複的元素。
2、list介面允許重複,放置元素的順序就是排放次序;list集合中的元素都是和索引有關係,索引list集合擴充套件的方法都是與索引有關係。
list有三個實現的類:
----arraylist:陣列列表,資料採用陣列方式儲存。
----linkedlist:鍊錶。
----vector:現階段已淘汰使用。
3、queue:
queue是collection的子介面,具有所有集合基本操作,除此之外,queue還提供了一些新的插入、提取、查詢等方法。
佇列:一種特殊的線性表,它只允許在表的前端(隊頭)進行刪除操作,而在表的後端(隊尾)進行插入操作。佇列中沒有元素時,稱之為空佇列。
優點:它通過返回值可以判斷是否成功,add()和remove()方法在失敗時會丟擲異常。
二、map:map介面是一組成對的鍵-值物件,即所持有的是key-value 。map中不能有重複的
key。擁有自己的內部排列機制。
1 、 hashmap:
hashmap通過hashcode對其內容進行快速查詢, hashmap中元素的排列順序是不固定的。
2、 treemap.:
treemap中所有的元素都保持著某種固定的順序,如果需要得到乙個有序的map就應該使用treemap.。
三、iterator:乙個遍歷集合的迭代泛型介面。
常用的2個方法如下:
1、hasnext():這個方法用來判斷被迭代的集合中是否存在元素。
2、next():返回集合中的當前元素。
(這個介面描寫較少,但很常用。)
Java的集合框架
linkedlist既是list介面的實現類也是queue介面的實現類,實現了鍊錶的資料結構。add int index,e element 向鍊錶的指定位置新增乙個新的 節點,該節點中的資料是引數element指定的物件。arraylist與linkedlist的主要區別是,arraylis讀寫速...
java的集合框架
你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下markdown的基本語法知識。全新的介面設計,將會帶來全新的寫作體驗 在創作中心設定你喜愛的 高亮樣式,markdown將 片顯示選擇的高亮樣式進行展示 全新的ka...
java集合框架
集合框架包括集合與對映 collection and map 以及它們的子類 容器類 1 list 元素有先後次序的集合,元素有index位置,元素可以重複,繼承自collection介面,實現類 arraylist,vector,linkedlist 2 set 元素無續,不能重複新增,是數學意義...