Java:List中常见的方法和五种遍历方法
时间:2025-06-24 11:53:52 来源:新华社
【字体:  

1.List集合的特点:

有序:存取元素的顺序是一致的。

有索引༚可通过索引操作元素。

可重复:存储的元素可以重复。

2.独特的List集合方法。

List继承了Collection的方法。

List集合是因为索引,因此,索引操作的方法有很多。

方法:

void add(int index,E element)----------->指定元素插入本集中的指定元素。

E remove(int index)----------->删除指定索引的元素,返回被删除的元素。

E set(int index,E element)----------->修改指定索引的元素,返回修改后的元素。

E get(int index)----------->返回指定索引处的元素。

代码运行:

package a04mylistdemo;import java.util.ArrayList;import java.util.List;public class Listdemo1 {    public static void main(String[] args) {        //1创建一个集合        List<String> list=new ArrayList<>();        //2.添加元素        list.add("aaa");        list.add("bbb");        list.add("ccc");//        System.out.println(list);//[aaa, bbb, ccc]//        ///将指定元素插入本集合的指定位置//        //细节:原索引上的元素会一次向后移动///        list.add(1,"qqq");//[aaa, qqq, bbb, ccc]//        System.out.println(list);//        ///删除指定索引的元素,返回被删除的元素///        String remove = list.remove(0);//        System.out.println(remove);//aaa        ///set方法:返回被修改的元素///        String result = list.set(0, "hhh");//        System.out.println(result);//aaa//        System.out.println(list);//[hhh, bbb, ccc]        //get方法:        String s = list.get(0);        System.out.println(s);//aaa    }}。

运行结果󿄚

List删除元素的两种方法:
//1.直接删除元素//2.通过索引删除。

注意点:默认通过索引删除,因为在调用方法时,如果该方法出现重载现象:优先调用实参参参参参类型相同的方法,如果要直接删除元素,需要手动包装。

代码演示:

package a04mylistdemo;import java.util.ArrayList;import java.util.List;public class Listdemo2 {    public static void main(String[] args) {        //两种删除List系列集合的方法        //1.元素直接删除        //2.通过索引删除        /1.创建并添加元素:        List list=new ArrayList<>();        list.add(1);        list.add(2);        list.add(3);        //2.删除元素        //list.remove(1);//[1, 3]        ///此时1是删除索引上的元素        //因为在调用方法时,如果该方法出现重载现象:优先调用实参参参参参类型相同的方法        //如果删除元素1:        //需要手动装箱,手动将基本数据类型的1转换为Integer类型        Integer i=Integer.valueOf(1);        list.remove(i);        System.out.println(list);//[2, 3]    }}。

运行结果󿄚

 。

运行结果:

 。

3.List集合的遍历方式。

(1)迭代器遍历。

元素࿰在遍历过程中需要删除c;使用迭代器。

代码演示༚

package a04mylistdemo;import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class ListDemo3 { public static void main(String[] args) { //1.创建集合并添加元素 List list=new ArrayList<>(); list.add("aaa"); list.add("bbb"); list.add("ccc"); //迭代器 Iterator it = list.iterator(); while (it.hasNext()){ String str = it.next(); System.out.println(str); } }}。

运行结果:

 。

运行结果:

 。

(2)列表迭代器遍历。

元素࿰需要添加到遍历过程中c;使用列表迭代器。

代码演示:

package a04mylistdemo;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.ListIterator;import java.util.function.Consumer;public class ListDemo3 { public static void main(String[] args) { //1.创建集合并添加元素 List<String> list=new ArrayList<>(); list.add("aaa"); list.add("bbb"); list.add("ccc"); /列表迭代器: ///获取列表迭代器的对象,里面的指针也默认指向0索引 ///添加额外的方法:元素可以添加到遍历过程中 ListIterator<String> it = list.listIterator(); while(it.hasNext()){ String str = it.next(); if("bbb".equals(str)){ it.add("qqq"); } } System.out.println(list); }}。

运行结果:

 。

运行结果:

 。

(3)增强for循环遍历。

只想遍历󿀌使用增强for或lambda表达式。

代码演示:

package a04mylistdemo;import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class ListDemo3 { public static void main(String[] args) { //1.创建集合并添加元素 List list=new ArrayList<>(); list.add("aaa"); list.add("bbb"); list.add("ccc"); ////增强for的遍历 //s是第三方变量 ////在循环过程中依次表示集合中的每个元素 for (String s : list) { System.out.println(s); } }}。

运行结果:

 。

运行结果:

 。

(4)Lambda表达式遍历。

代码演示:

package a04mylistdemo;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.function.Consumer;public class ListDemo3 { public static void main(String[] args) { //1.创建集合并添加元素 List<String> list=new ArrayList<>(); list.add("aaa"); list.add("bbb"); list.add("ccc"); //lambda表达式 ///foreach方法的底层实际上是一个循环遍历,集合中的每个元素依次获得 ///并将每个元素传递给下面的accept方法 ///acccept方法形参spt 依次表示集合中的每个元素/// list.forEach(new Consumer<String>() {// @Override// public void accept(String s) {// System.out.println(s);//}// }); list.forEach( s -> System.out.println(s)); }}。运行结果󿄚 。运行结果󿄚 。(5)普通for循环༈因为List集合中有索引)如果你想在遍历时操作索引,可使用普通for。代码演示༚package a04mylistdemo;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.function.Consumer;public class ListDemo3 { public static void main(String[] args) { //1.创建集合并添加元素 List<String> list=new ArrayList<>(); list.add("aaa"); list.add("bbb"); list.add("ccc"); //普通for for (int i = 0; i < list.size(); i++) { ///i是集合中的每个索引 String s = list.get(i); System.out.println(s); } }}。运行结果󿄚

[责任编辑:百度一下]
检察日报数字报 | 正义网 |
Copyrights©最高人民检察院 All Rights Reserved.