天逸baby · 程式 ·

java(十九)集合大總結,你所不知道的小秘密!

1:集合(掌握)

今天為大家講解的是集合的基礎知識以及需要掌握的必備知識。集合在以後開發中會經常使用。所以大家一定要耐心學習,不懂就要勤加練習。這一章節內容頗有難度。希望能夠幫助你們。學習java,一定要堅持!

象數組。但是,如果對象的個數是變化的,對象數組就解決不了了。

java

(1)集合的由來

我們需要對多個對象進行存儲和獲取。可以使用對象數組。

但是,如果對象的個數是變化的,對象數組就解決不了了。

怎麼辦呢?java就提供了集合類解決。

(2)集合和數組的分別?

A:長度問題

數組長度固定

集合長度可變

B:存儲元素類型1

數組只能存儲同一種類型

集合可以存儲不同類型的對象

C:存儲元素類型2

數組可以存儲基本類型,也可以存儲引用類型。

集合只能存儲引用類型。

(1)集合的由來我們需要對多個對象進行存儲和獲取。可以使用對

java

(3)集合體系的由來:

多種集合的數據結構不同,但是,它們有共性的功能。

通過不斷的向上抽取,最終形成了集合的體系結構。

Collection

|--List

|--ArrayList

|--Vector

|--LinkedList

|--Set

|--HashSet

|--TreeSet

(4)Collection接口的功能:

A:添加功能

add(Object obj)

B:刪除功能

remove(Object obj)

C:判斷功能

contains(Object obj)

D:獲取功能

Iterator iterator()

E:長度功能

size()

學習java,一定要堅持!java

java

(5)疊代器

A:疊代器其實就是遍歷集合的一種方式。

B:疊代器的使用:

疊代器不能單獨使用,它依賴於集合而存在。

C:使用步驟

a:通過集合對象調用iterator()方法得到疊代器對象。

b:通過疊代器對象的hasNext()方法判斷是否有元素。

c:通過疊代器對象的next()獲取元素。

D:原理:

是以內部類形式存在的。

(6)案例:(掌握)

集合的使用步驟:

A:創建集合對象

B:創建元素對象

C:把元素添加到集合中

D:遍歷集合

a:通過集合對象調用iterator()方法得到疊代器對象。

b:通過疊代器對象的hasNext()方法判斷是否有元素。

c:通過疊代器對象的next()獲取元素。

存儲字符串並遍歷:

Collection c = new ArrayList();

String s1 = "hello";

String s2 = "world";

String s3 = "java";

c.add(s1);

c.add(s2);

c.add(s3);

Iterator it = c.iterator();

while(it.hasNext()) {

String s = (String) it.next();

System.out.println(s);

}

存儲自定義對象並遍歷:自己補齊。

定要耐心學習,不懂就要勤加練習。這一章節內容頗有難度。希望能夠幫助你們。

java

2:List及其子類(掌握)

(1)List的特點:

Collection

|--List:元素有序(存入順序和取出順序一致),可重複。

|--Set:元素無序,唯一。

(2)List的特有功能:

A:添加功能

add(int index,Object obj)

B:刪除功能

remove(int index)

C:獲取功能

get(int index)

D:修改功能

set(int index,Object obj)

的基礎知識以及需要掌握的必備知識。集合在以後開發中會經常使用。所以大家一

堅持java

(3)案例:

List存儲字符串並遍歷。

List存儲自定義對象並遍歷。

使用集合存儲自定義對象的步驟:

1、定義要存儲到集合當中的類

2、創建 集合 集合引用變量 = new 集合();

3、創建要存儲到集合當中的類的對象們

4、調用集合方法,存儲對應的對象

5、返回對應集合的疊代器

6、使用疊代器判斷是否有下個元素

7、如果有下個元素則獲取下個元素

(4)ListIterator(理解)

A:可以逆向遍歷,但是要先正向遍歷,所以一般不用。

B:可以解決並發修改異常問題。

並發修改異常:在用疊代器遍歷集合的時候,通過集合去修改了集合的元素。

解決方案:

a:通過列表疊代器遍歷,通過列表疊代器修改集合。

b:通過集合遍歷,通過集合修改集合。

1:集合(掌握)今天為大家講解的是集合

記得轉發哦

想要了解更多?請關注我的頭條號。作為程式設計師的小編會更加賣力的總結的。

您的支持和關注就是我的動力!

聲明:文章觀點僅代表作者本人,PTTZH僅提供信息發布平台存儲空間服務。
喔!快樂的時光竟然這麼快就過⋯
more