標籤:集合(1)
集合和數組的區別
1)長度的區別:
數組:長度是固定的
集合:長度是可變的
2)儲存資料類型的區別:
數組:可以儲存基礎資料型別 (Elementary Data Type),還能儲存引用資料類型
集合:只能儲存參考型別
3)儲存類型的元素的區別:
集合:儲存多種類型的元素:水+可樂+啤酒...
數組:儲存的是同一種資料類型的元素:水杯中的水
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):對一個集合取交集(思考:傳回值類型表達的是什麼意思?交集的元素去哪裡?)
650) this.width=650;" title="集合1.png" src="https://s3.51cto.com/wyfs02/M00/9D/C6/wKioL1mFuDKyOAlcAAEcsQdGl7E509.png-wh_500x0-wm_3-wmp_4-s_3858320594.png" alt="wKioL1mFuDKyOAlcAAEcsQdGl7E509.png-wh_50" />
4.Iterator iterator():表示對集合中的元素進行迭代(遍曆)
Iterator:介面
Object next()返回迭代的下一個元素。 (擷取元素)
boolean hasNext()如果仍有元素可以迭代,則返回 true。
650) this.width=650;" title="迭代器.png" src="https://s4.51cto.com/wyfs02/M01/9D/C6/wKiom1mFuHfgO4ncAADG2SNBsa8333.png-wh_500x0-wm_3-wmp_4-s_1165545918.png" alt="wKiom1mFuHfgO4ncAADG2SNBsa8333.png-wh_50" />
5.List集合是Collection集合的子介面,你裡面的iterator()方法在我的List也可以用!
介面與介面的關係是繼承關係!
List集合專有迭代遍曆方式
ListIterator listIterator() ;
650) this.width=650;" title="list 1.png" src="https://s1.51cto.com/wyfs02/M01/9D/C6/wKioL1mFuI-CD1k6AACe5lg6wDo111.png-wh_500x0-wm_3-wmp_4-s_3391650775.png" alt="wKioL1mFuI-CD1k6AACe5lg6wDo111.png-wh_50" />
ListIterator介面:
boolean hasNext():表示正向遍曆:是否有下一個可以迭代的元素
Object next():擷取下一個元素
boolean hasPrevious():表示逆向遍曆:是否有上一個可以迭代的元素
Object previous()返回列表中的前一個元素
有個順序問題:要想使用逆向遍曆,必須先向遍曆,如果先逆向遍曆,沒意義,一般不這樣使用!
650) this.width=650;" title="list 2.png" src="https://s1.51cto.com/wyfs02/M02/9D/C6/wKiom1mFuKjSUPQ5AADhlT4Jd2s304.png-wh_500x0-wm_3-wmp_4-s_600257237.png" alt="wKiom1mFuKjSUPQ5AADhlT4Jd2s304.png-wh_50" />
JAVA---集合部分(1)