最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中ArrayList集合的常用方法大全

 更新時(shí)間:2021年01月23日 11:08:34   作者:初識(shí)Java小木南  
這篇文章主要給大家介紹了關(guān)于Java中ArrayList集合的常用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

ArrayList集合的創(chuàng)建

非泛型

創(chuàng)建ArrayList集合對(duì)象,可以添加任意Object子類元素至集合

//非泛型創(chuàng)建的ArrayList集合對(duì)象可以保存任何類型的值
ArrayList list = new ArrayList();
list.add("str");//存入String類型數(shù)據(jù)
list.add(23);//存入int類型數(shù)據(jù)
list.add(2.5);//存入double類型數(shù)據(jù)
list.add('c');//存入char類型數(shù)據(jù)

泛型

采用泛型創(chuàng)建ArrayList集合對(duì)象,只能添加泛型數(shù)據(jù)至集合

//泛型創(chuàng)建的ArrayList集合對(duì)象,只能保存泛型數(shù)據(jù)
ArrayList<String> list1 = new ArrayList<String>();
//后面的泛型類型可以省略
ArrayList<String> list2 = new ArrayList<>();
list1.add("str1");
list1.add("str2");
//list1.add(23); 出現(xiàn)編譯錯(cuò)誤,list1只能存放String類型數(shù)據(jù)

ArrayList集合的初始化

無參構(gòu)造

使用無參構(gòu)造方法,按照空數(shù)組的方式初始化內(nèi)部數(shù)組elementData

//內(nèi)部數(shù)組為空
ArrayList<String> list = new ArrayList<String>(); 
//調(diào)用add()方法,空數(shù)組的長(zhǎng)度變?yōu)?0
list.add("str");

有參構(gòu)造

使用有參構(gòu)造方法,按照指定的容量,初始化內(nèi)部數(shù)組elementData

//內(nèi)部數(shù)組長(zhǎng)度為38
ArrayList<String> list02 = new ArrayList<String>(38); 

常用方法

1.add()方法

作用:給集合添加元素;

參數(shù):①需要添加的元素②下標(biāo)位置,需要添加的元素;

返回:boolean類型值;

ArrayList<String> list = new ArrayList<String>();
// 添加元素(默認(rèn)添加至集合的末尾)
list.add("str1");
list.add("str2");
System.out.println(list);//輸出:[str1, str2]
// 添加元素至指定位置(list"頭部"添加元素str3)
list.add(0,"str3");
System.out.println(list);//輸出:[str3, str1, str2]

2.addAll()方法

作用:給集合添加集合;

參數(shù):①需要添加的集合;②下標(biāo)位置,需要添加的集合;

返回:boolean類型值;

ArrayList<String> list1 = new ArrayList<String>();
list1.add("str1");
list1.add("str2");
ArrayList<String> list2 = new ArrayList<String>();
list2.add("str01");
list2.add("str02");
// 添加集合(默認(rèn)添加至集合的末尾)
list1.addAll(list2);
System.out.println(list1);//輸出:[str1, str2, str01, str02]
// 添加集合至指定位置(list1"頭部"添加集合list2)
list1.add(0,list2);
//輸出:[str01, str02, str1, str2, str01, str02]
System.out.println(list1);

3.get()方法

作用:根據(jù)下標(biāo)獲取集合中的元素;

參數(shù):下標(biāo)位置(0——(list.size()-1)之間);

返回:集合中的元素;

ArrayList<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
list.add("str3");
list.add("str4");
String str=list.get(2);
System.out.println(str);//輸出:str3

4.size()方法

作用:獲取集合中的元素個(gè)數(shù);

參數(shù):無;

返回:int類型,集合的元素個(gè)數(shù);

ArrayList<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
list.add("str3");
list.add("str4");
int n=list.size();
System.out.println(n);//輸出:4

5.clear()方法

作用:清除集合中的所有元素;

參數(shù):無;

返回:無;

ArrayList<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
System.out.println(list);//輸出:[str1, str2]
list.clear();
System.out.println(list);//輸出:[]

6.contains()方法

作用:判斷集合內(nèi)是否存在指定元素;

參數(shù):指定元素;

返回:boolean(true表示存在,false表示不存在);

ArrayList<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
list.add("str3");
list.add("str4");
System.out.println(list.contains("str2"));//輸出:true
System.out.println(list.contains("str5"));//輸出:false

7.indexof()方法

作用:查找集合內(nèi)的元素;

參數(shù):需要查找的元素;

返回:int類型(找到返回下標(biāo),未找到返回-1);

ArrayList<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
list.add("str3");
list.add("str4");
System.out.println(list.indexof("str2"));//輸出:1
System.out.println(list.indexof("str5"));//輸出:-1

8.remove()方法

作用:刪除集合內(nèi)的元素;

參數(shù):①指定下標(biāo)位置;②指定元素;

返回:①指定下標(biāo)位置刪除返回刪除的元素值;②指定元素輸出返回ture;

ArrayList<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
list.add("str3");
list.add("str4");
System.out.println(list.remove(1));//輸出:str2
System.out.println(list.remove("str4"));//輸出:true

9.set()方法

作用:將指定下標(biāo)位置改為指定元素;

參數(shù):指定下標(biāo),指定元素;

返回:修改前的原值;

ArrayList<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
list.add("str3");
list.add("str4");
System.out.println(list);//輸出:[str1, str2, str3, str4]
System.out.println(list.set(1,"str5"));//輸出:str2
System.out.println(list);//輸出:[str1, str5, str3, str4]

10.toArray()方法

作用:將集合轉(zhuǎn)換為數(shù)組;

參數(shù):①無參;②其他類型的數(shù)組對(duì)象;

返回:①Object[ ];②指定類型的數(shù)組;

// 快速創(chuàng)建并初始化一個(gè)List集合
// 該集合對(duì)象類型為Arrays類的內(nèi)部類ArrayList
List<String> list1 = Arrays.asList("str1", "str2", "str3", "str4", "str5", "str6");
// 將集合內(nèi)所有元素添加至heroList02
ArrayList<String> list2 = new ArrayList<String>();
list2.addAll(list1);
Object[] array01 = list2.toArray(); //轉(zhuǎn)換成Object數(shù)組
String[] array02 = list2.toArray(new String[0]); // 轉(zhuǎn)換成String類型數(shù)組

11.subList()方法

作用:在原集合中截取子集合;

參數(shù):開始下標(biāo), 結(jié)束下標(biāo);

返回:子集合;

List<String> list1 = Arrays.asList("str1", "str2", "str3", "str4", "str5", "str6");
ArrayList<String> list2 = new ArrayList<String>();
list2.addAll(list1);
//截取(0,3),即為0,1,2三個(gè)元素,區(qū)間[0,3)
List<String> result= list2.subList(0, 3);
System.out.println(result);//輸出:[str1, str2, str3]

12.sort()方法

作用:對(duì)集合中的元素排序;

參數(shù):Comparator比較器接口實(shí)現(xiàn)類對(duì)象;

返回:無;

List<String> list1 = Arrays.asList("str8", "str4", "str6", "str3", "str2", "str9");
ArrayList<String> list = new ArrayList<String>();
list.addAll(list1);
//new Comparator<String>()采用了匿名類對(duì)象,直接實(shí)現(xiàn)compare()方法
list.sort(new Comparator<String>() {
	public int compare(String o1, String o2) {
		return o1.compareTo(o2);
	}
});
System.out.println(list);//輸出:[str2, str3, str4, str6, str8, str9]

ArrayList集合的遍歷

List<String> list1 = Arrays.asList("str1", "str2", "str3", "str4", "str5", "str6");
ArrayList<String> list = new ArrayList<String>();
list.addAll(list1);
// 方式1:使用for循環(huán)遍歷集合list
for (int i = 0, len = list.size(); i < len; i++) {
	//輸出:str1,str2,str3,str4,str5,str6,
	System.out.print(list.get(i)+",");
}
System.out.println("-----------------------------------");
// 方式2:使用迭代器遍歷集合list
// (1)獲取當(dāng)前集合對(duì)象的迭代器對(duì)象
Iterator<String> it = list.iterator();
// (2)使用迭代器遍歷每個(gè)元素
while (it.hasNext()) { 	//判斷集合是否有下一個(gè)元素 
	//輸出:str1,str2,str3,str4,str5,str6,	
	System.out.print(it.next()+",");//獲取集合的下一個(gè)元素
}
System.out.println("-----------------------------------");
// 方式3 : foreach遍歷list
for(String str : list) {
	//輸出:str1,str2,str3,str4,str5,str6,
	System.out.print(str+",");
}

以上是ArrayList的常用方法,僅個(gè)人觀點(diǎn),若有不對(duì)的地方,希望各位大佬多多指正。

總結(jié)

到此這篇關(guān)于Java中ArrayList集合的文章就介紹到這了,更多相關(guān)Java ArrayList集合常用方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MultipartResolver實(shí)現(xiàn)文件上傳功能

    MultipartResolver實(shí)現(xiàn)文件上傳功能

    這篇文章主要為大家詳細(xì)介紹了MultipartResolver實(shí)現(xiàn)文件上傳功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Java?Servlet響應(yīng)httpServletResponse過程詳解

    Java?Servlet響應(yīng)httpServletResponse過程詳解

    HttpServletResponse是處理http響應(yīng)的對(duì)象,調(diào)用該對(duì)象的方法,設(shè)置到對(duì)象屬性的內(nèi)容,tomcat最終會(huì)組織為http響應(yīng)報(bào)文
    2022-02-02
  • 基于Java解析國(guó)密數(shù)字證書的操作方法

    基于Java解析國(guó)密數(shù)字證書的操作方法

    在Java環(huán)境中解析使用國(guó)密算法(如SM3WITHSM2)的數(shù)字證書可能遇到挑戰(zhàn),使用BouncyCastle加密庫(kù)可以解決Java標(biāo)準(zhǔn)庫(kù)無法識(shí)別國(guó)密算法橢圓曲線的問題,成功解析國(guó)密數(shù)字證書,添加BouncyCastle依賴并修改代碼,使其支持國(guó)密算法,即可解析采用SM3WITHSM2算法的數(shù)字證書
    2024-09-09
  • Java兩個(gè)List<T> 求交集,差集,并集,去重后的并集

    Java兩個(gè)List<T> 求交集,差集,并集,去重后的并集

    本文主要介紹了Java兩個(gè)List<T> 求交集,差集,并集,去重后的并集,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • java實(shí)現(xiàn)簡(jiǎn)單學(xué)生成績(jī)管理系統(tǒng)

    java實(shí)現(xiàn)簡(jiǎn)單學(xué)生成績(jī)管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡(jiǎn)單學(xué)生成績(jī)管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • InterlliJ IDEA2020新建java web項(xiàng)目找不到Static Web的解決

    InterlliJ IDEA2020新建java web項(xiàng)目找不到Static Web的解決

    這篇文章主要介紹了InterlliJ IDEA2020新建java web項(xiàng)目找不到Static Web的解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • java編寫一個(gè)花名隨機(jī)抽取器的實(shí)現(xiàn)示例

    java編寫一個(gè)花名隨機(jī)抽取器的實(shí)現(xiàn)示例

    這篇文章主要介紹了java編寫一個(gè)花名隨機(jī)抽取器的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Java ResourceBundle案例詳解

    Java ResourceBundle案例詳解

    這篇文章主要介紹了Java ResourceBundle案例詳解,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Spring?AI借助全局參數(shù)實(shí)現(xiàn)智能數(shù)據(jù)庫(kù)操作與個(gè)性化待辦管理

    Spring?AI借助全局參數(shù)實(shí)現(xiàn)智能數(shù)據(jù)庫(kù)操作與個(gè)性化待辦管理

    這篇文章主要介紹了Spring?AI借助全局參數(shù)實(shí)現(xiàn)智能數(shù)據(jù)庫(kù)操作與個(gè)性化待辦管理,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-11-11
  • Java匿名內(nèi)部類的寫法示例

    Java匿名內(nèi)部類的寫法示例

    這篇文章主要給大家介紹了關(guān)于Java匿名內(nèi)部類的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08

最新評(píng)論

凤山县| 平舆县| 泽普县| 会泽县| 陕西省| 新田县| 朝阳县| 南江县| 锡林浩特市| 灌南县| 苍山县| 湟中县| 额尔古纳市| 永顺县| 沁阳市| 三台县| 长顺县| 台南市| 克什克腾旗| 上思县| 高州市| 株洲县| 永济市| 射阳县| 南开区| 海安县| 西宁市| 临高县| 遂宁市| 阜阳市| 本溪| 综艺| 景泰县| 墨竹工卡县| 双峰县| 右玉县| 个旧市| 永城市| 临泉县| 万州区| 遂宁市|