1. 程式人生 > >JAVA---集合部分(1)

JAVA---集合部分(1)

集合(1)

  1. 集合和數組的區別
    1)長度的區別:
    數組:長度是固定的
    集合:長度是可變的
    2)存儲數據類型的區別:
    數組:可以存儲基本數據類型,還能存儲引用數據類型
    集合:只能存儲引用類型
    3)存儲類型的元素的區別:
    集合:存儲多種類型的元素:水+可樂+啤酒...
    數組:存儲的是同一種數據類型的元素:水杯中的水

  2. Collection 層次結構中的根接口。

Collection 表示一組對象,這些對象也稱為 collection 的元素。一些 collection 允許有重復的元素,而另一些則不允許。一些 collection 是有序的,而另一些則是無序的。
JDK 不提供此接口的任何直接實現:它提供更具體的子接口(如 Set 和 List)實現。


3.Collection的基本方法:

boolean addAll(Collection c):添加一個集合中的元素
boolean removeAll(Collection c):刪除一個集合中的元素(思考:刪除一個元素算是刪除呢還是刪除所有算是刪除?)

boolean containsAll(Collection c):判斷是否包含一個集合中的元素(包含一個算是包含,還是包含所有元素算術包含?)
交集功能:
boolean retainAll(Collection c):對一個集合取交集(思考:返回值類型表達的是什麽意思?交集的元素去哪裏?)

技術分享

4.Iterator iterator():表示對集合中的元素進行叠代(遍歷)

Iterator:接口
Object next()返回叠代的下一個元素。 (獲取元素)
boolean hasNext()如果仍有元素可以叠代,則返回 true。

技術分享

5.List集合是Collection集合的子接口,你裏面的iterator()方法在我的List也可以用!
接口與接口的關系是繼承關系!

List集合專有叠代遍歷方式
ListIterator listIterator() ;
技術分享

ListIterator接口:
boolean hasNext():表示正向遍歷:是否有下一個可以叠代的元素
Object next():獲取下一個元素

boolean hasPrevious():表示逆向遍歷:是否有上一個可以叠代的元素
Object previous()返回列表中的前一個元素

有個順序問題:要想使用逆向遍歷,必須先向遍歷,如果先逆向遍歷,沒意義,一般不這樣使用!


技術分享

JAVA---集合部分(1)