150天打卡Day21_集合(上篇)
集合類概述
java.util包中提供了一些集合類,這些集合又稱之為是容器。提到容器不難想到數(shù)組,集合類與數(shù)組的不同之處在于,數(shù)組的長(zhǎng)度是固定的,集合的長(zhǎng)度是可變的,集合用來存儲(chǔ)一組元素,并且提供了操作元素的相關(guān)方法,常用的集合有List集合,Set集合和Map集合,其中List和Set集合繼承了Collection接口,各接口還提供了不同的實(shí)現(xiàn)類,上述集合的繼承關(guān)系如圖:
?

Collection 接口
Collection接口,定義了所有集合都具備的方法。Collection接口提供兩個(gè)子接口:List接口和Set接口。
java.util.List集合是可以重復(fù)的,并且有序
java.util.Set集合是不可重復(fù),大部分實(shí)現(xiàn)都是無序的
重復(fù)與否指的是元素是否重復(fù),重復(fù)的標(biāo)準(zhǔn)是元素equals比較是否為true
方法
?
add(E e)
add方法是將指定的對(duì)象添加到該集合中
remove(Object o)
remove方法將指定的對(duì)象從該集合中移除
isEmpty()
返回boolean值,用于判斷當(dāng)前集合是否為空
iterator()
返回在此Collection的元素上進(jìn)行迭代的迭代器,用于遍歷集合中的對(duì)象
size()
返回int型值,獲取集合中元素的個(gè)數(shù)
?
例如:
package sesson12; import java.util.ArrayList; import java.util.List; public class Collection_Demo { public static void main(String[] args) { Collection list = new ArrayList(); // 創(chuàng)建集合對(duì)象 /* * add()方法將指定的元素添加到集合中 */ list.add("a"); list.add("b"); list.add("c"); list.addAll(list); System.out.println(list); /* * remove()方法是將指定的元素從集合中移除 */ list.remove("c"); list.removeAll(list); System.out.println(list); /* * isEmploy返回boolean值,判斷是否為空 判斷集合是否為空集,(不含有任何元素)null是指沒有集合,isEmploy是指集合中沒有元素 */ boolean isEmploy = list.isEmpty(); System.out.println(isEmploy); /* * 返回是int類型,返回當(dāng)前集合中的元素個(gè)數(shù) */ int size = list.size(); System.out.println(size); } }
除此之外集合還提供了方法用于判斷指定元素是否被集合包含contains(E e),返回boolean值,當(dāng)指定元素被集合包含時(shí)返回true。
?
重新定義一個(gè)Student類作為集合元素進(jìn)行測(cè)試集合方法使用
==判斷的是內(nèi)容和內(nèi)存地址
equals判斷的是內(nèi)容
測(cè)試:
遍歷集合
Iterator迭代器
集合提供了統(tǒng)一可以遍歷集合元素的當(dāng)前方法
返回一個(gè)可以遍歷當(dāng)前集合的迭代器實(shí)現(xiàn)類
Iterator是一個(gè)接口,規(guī)定了所有迭代器實(shí)現(xiàn)類遍歷集合的通用方法。
不同的集合都提供一個(gè)實(shí)現(xiàn)類,無需記住那些實(shí)現(xiàn)類的名字,只需要將他們當(dāng)做一個(gè)Iterator看待就可以,調(diào)用相應(yīng)方法獲取集合元素。
?
? //Boolean hasNext()迭代器的該方法用來判斷其遍歷的集合是否還有下一個(gè)元素可以取出 ? ? ? ?while (ite.hasNext()) { // 判斷下一個(gè)元素之后有沒有值 ? ? ? ? ? ?String str ?=(String)it.next(); ? //通過迭代器獲取集合中下一個(gè)元素。 ? ? ? ? ? ?System.out.println(ite.next()); ? ? ? ?} ? ?}
?記得幫管阿姨點(diǎn)點(diǎn)關(guān)注呦
