日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java集合类详解和使用_Java 集合类详解

發布時間:2025/3/15 java 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java集合类详解和使用_Java 集合类详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天來看看“集合類”的概念。

集合可以看作是一個容器,比如,所有Java有關的書都可以看作是一個集合。對于集合中的各個對象很容易將其存放到集合中,也很容易將其從集合中取出來,還可以按照一定的順序將其擺放。Java中提供了不同的集合類,這些集合類具有不同的存儲對象的方式,并提供了相應的方法以方便用戶對集合進行遍歷,添加,刪除,以及查找指定的對象。

集合類又被稱作容器,提到容器大家很自然地就想到了數組,那么集合類和數組有哪些不同之處呢?首先,數組的長度是固定的,而集合的長度是可變的;其次,數組用來存放基本的數據類型,而集合用來存放對象的引用。常用的集合主要分為兩大類,Map類和Collection類,Collection類又包括Set類和List類,它們之間的繼承關系可以用下面的圖來表示:

Collection接口是層次結構中的根接口,其構成單位稱為元素。Collection接口通常不能直接使用,但提供了添加元素,刪除元素,管理數據的方法。從上面的繼承圖可以看出,Set和List類繼承了Collection接口,因此這些方法對Set和List類也是通用的。那么,接下來,我們看看Collection類的常用方法。

Collection集合的常用方法主要有以下幾種:

boolean add(Object element); 向集合中添加元素

void clear(); 清空集合

boolean contains(Object o); ?判斷集合中是否包含某元素

boolean isEmpty(); ? 判斷集合中是否有元素

Iterator iterator(); ?獲取集合所依賴的迭代器對象

boolean remove(Object o); ? 刪除集合中某個元素

int size(); ?獲取集合中元素的個數

Object[] toArray(); ?將集合轉換成數組

接下來我們看這些方法的使用??匆韵鲁绦?#xff1a;

import java.util.*;

public class CollectionTest01{

public static void main(String[] args){

//1.創建集合

Collection c=new ArrayList();

//2.添加元素

c.add(1);

c.add(new Integer(100));

c.add(new Object());

Customer cus=new Customer("JACK",20);

//3.獲取元素的個數

System.out.println(c.size()); //4

System.out.println(c.isEmpty()); //false

//4.將集合轉換成Object類型的數組

Object[] objs=c.toArray();

for(int i=0;i

System.out.println(objs[i]);

}

//5.清空

c.clear();

System.out.println(c.size()); //0

//6.判斷集合是否為空

System.out.println(c.isEmpty()); //true

}

}

class Customer{

String name;

int age;

Customer(String name,int age){

this.name=name;

this.age=age;

}

//重寫Object中的toString方法

public String toString(){

return "Customer[name="+name+",age="+age+"]";

}

}

編譯后運行輸出:

3

false

1

100

java.lang.Object@15db9742

0

true

上述代碼中,

1.創建集合,這里注意,因為Collection是一個接口,所以不能直接Collection c=new Collection(); 我們可以尋找它下面的一個實現類(參考上面的繼承類的圖)ArrayList,即Collection c=new ArrayList();

2.添加元素, c.add(1);這里用到了自動裝箱的知識,忘記了的翻到前面看一看啊,c.add(new Object());相當于Object o=new Object(); c.add(o);也就是說Collection只能存儲引用類型。之后我們自己給定一個其他類型Customer,并且重寫Object中的toString()方法,然后在main()方法中添加元素c.add(cus);

3.獲取元素的個數,使用c.size();

4. 將集合轉換成Object類型的數組,使用的方法為toArray(); 之后使用for循環進行遍歷;輸出為

1

100

java.lang.Object@15db9742

0

5.清空集合,使用c.clear(); 然后再次獲取元素個數之后會發現System.out.println(c.size());輸出為0;

6.中間我們穿插了c.isEmpty(); 即判斷集合是否為空;

接下來我們看看迭代器iterator()方法。看以下代碼:

import java.util.*;

public class CollectionTest02{

public static void main(String[] args){

//創建集合對象

Collection c=new LinkedList();

//添加元素

c.add(100);

c.add(3.14);

c.add(false);

//迭代,遍歷

//1.獲取迭代器對象

Iterator it=c.iterator();

//2.開始調用方法,完成遍歷,迭代

while(it.hasNext()){

Object element=it.next();

System.out.println(element);

}

/* //或者使用for循環

for(Iterator it=c.iterator();it.hasNext();){

Object o=it.next();

System.out.println(o);

} */

}

}

在上述代碼中,

1.獲取迭代器對象,已經創建了集合對象c,進行迭代時直接調用iterator()方法,也就是說,迭代器=c.iterator(); 這里c可能為ArrayList,HashSet,LinkedList各種集合對象,這樣調用iterator()就實現了不同的迭代器,但是所有的迭代器都實現了Iterator接口,所以可以直接Iterator it=c.iterator();也就是說迭代器是直接面向接口編程,看不出具體的實現類,it是引用,保存了內存地址,指向堆中的迭代器對象。

2.開始調用方法,完成遍歷,迭代

迭代器Iterator里面有三個方法,hasNext()判斷迭代器里面是否有更多的元素,如果有,返回true,否則返回false; next()方法將迭代器向下移動一位,并且取出指向的元素,但要注意,調用next()方法之前,為了防止出現問題,必須先調用hasNext()方法判斷是否還有元素。這里介紹了while和for循環兩種遍歷方式。

好了,今天的內容講到這里,如果覺得有用,歡迎分享給更多人!

總結

以上是生活随笔為你收集整理的java集合类详解和使用_Java 集合类详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。