新手看Java中的集合類(零)

2021-08-09 05:29:09 字數 1932 閱讀 6136

1. 記住三個介面

collectionmap以及iterator,前面兩個介面是用來裝物件的,稱為容器;iterator是用來迭代collection裡面的物件的(就是按順序訪問物件),稱為迭代器。

其中 collection 每個單位只能裝乙個物件,而 map 每個單位可以裝一對物件。iterator 可以按順序去訪問每個單位裡的內容。

collection 可以存放一組物件,可以簡單理解為「物件陣列」。它衍生出了三個介面,set、list、queue(主要關心這三個),每個子介面又有不一樣的實現類。淺綠色代表介面,淺黃色代表具體的實現類。其中常用的類已經打上勾了

collection 定義了很多方法,其子介面有的增加了自己本身的方法(比如:list)。使用時我們需要用具體的實現類去建立容器物件裝」東西「,可以用父介面 容器名稱 = new 具體實現類();這樣的語法。基本上不使用 collection 定義,因為有的子介面有對 collection 介面進行擴充,所以我們一般使用第二欄的子介面去定義容器。定義完畢後直接使用介面中的方法就可以操作了,記住一定要勤看文件。

set strs =

new enumset();

set strs1 =

new treeset();

queue strs2 =

new arraydeque();

list strs3 =

new linkedlist();

list strs4 =

new arraylist();

// new 後面的實現類根據不同需求更換

3. map

map 的每個格仔是用來裝一對資料的,並且兩個物件是有對映(對應)關係的,而且key 不允許重複。我們不關注 map 衍生出來的子介面,關心的是它的實現類。淺綠色代表介面,淺黃色代表具體的實現類。其中常用的類已經打上勾了

使用方式同 collection ,也是父介面 容器名稱 = new 具體實現類();這樣的語法。

map strs = new hashmap();

map strs1 = new treemap();

// new 後面的實現類根據不同需求更換

4. iterator

迭代器,我們用它去訪問 collection 實現類定義的容器裡裝的物件。先用定義好的容器產生乙個迭代器的物件,然後掉用方法去遍歷元素:

list

<

string

> strs =

new arraylist<>(); // linkedlist也可以實現

strs.add("hello");

strs.add("world"); // 新增元素

strs.add("name");

iterator<

string

> it = strs.iterator(); // 返回乙個iterator物件用於迭代

// 迭代輸出

while (it.hasnext())

java的集合類

由collection介面派生的兩個介面是list和set set set介面同樣是collection介面的乙個子介面,它表示數學意義上的集合概念。set中不包含重複的元素,即set中不存兩個這樣的元素e1和e2,使得e1.equals e2 為true。由於set介面提供的資料結構是數學意義上集...

java中LinkedList 集合類實現棧和佇列

across through over的區別 三者都有 穿過 通過 的意思,但用法各不相同。across多指從一定範圍的一邊到另一邊,且在物體的表面上或沿著某一條線的方向而進行的動作,其含義常與介詞on有關。如 the students ran across the playground into ...

Java集合類的總結

集合類庫考慮到 容納自己物件 的問題,並將其分割成兩個明確的概念 1 集合 collection 一組單獨的元素。乙個list 列表 必須按特定的順序容納元素,而乙個set 集 不可包含任何重複的元素。2 對映 map 一系列 鍵 值 對,如雜湊表身上的充分體現。map可以和陣列一樣,擴充到多維,可...