Java List操作与遍历全攻略
Java List常见方法
List是Java集合框架中最常用的接口之一,提供了多种操作元素的方法。以下是List常见的方法。
添加元素
List<String> list = new ArrayList<>();
list.add("Apple"); // 添加单个元素
list.add(1, "Banana"); // 在指定位置插入元素
删除元素
list.remove("Apple"); // 删除指定元素
list.remove(0); // 删除指定位置的元素
获取元素
String fruit = list.get(0); // 获取指定位置的元素
int size = list.size(); // 获取列表大小
检查元素
boolean contains = list.contains("Banana"); // 检查是否包含某元素
int index = list.indexOf("Banana"); // 获取元素索引
修改元素
list.set(0, "Orange"); // 修改指定位置的元素
清空列表
list.clear(); // 删除所有元素
List的五种遍历方式
1. 使用for循环
for (int i = 0; i < list.size(); i++) {System.out.println(list.get(i));
}
2. 使用增强for循环
for (String item : list) {System.out.println(item);
}
3. 使用Iterator
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {String item = iterator.next();System.out.println(item);
}
4. 使用ListIterator(支持双向遍历)
ListIterator<String> listIterator = list.listIterator();
while (listIterator.hasNext()) {String item = listIterator.next();System.out.println(item);
}
5. 使用Java 8的forEach方法
list.forEach(item -> System.out.println(item));
完整示例
import java.util.*;public class ListExample {public static void main(String[] args) {List<String> fruits = new ArrayList<>();fruits.add("Apple");fruits.add("Banana");fruits.add("Orange");// 五种遍历方式System.out.println("1. for循环遍历:");for (int i = 0; i < fruits.size(); i++) {System.out.println(fruits.get(i));}System.out.println("\n2. 增强for循环遍历:");for (String fruit : fruits) {System.out.println(fruit);}System.out.println("\n3. Iterator遍历:");Iterator<String> iterator = fruits.iterator();while (iterator.hasNext()) {System.out.println(iterator.next());}System.out.println("\n4. ListIterator遍历:");ListIterator<String> listIterator = fruits.listIterator();while (listIterator.hasNext()) {System.out.println(listIterator.next());}System.out.println("\n5. forEach方法遍历:");fruits.forEach(System.out::println);}
}
实例二:
public class test01_List {public static void main(String[] args) {/*List系列集合的五种遍历方式:1.迭代器2.列表迭代器3.增强for4.Lambda表达式5.普通for循环*///创建集合并添加元素List<String> list = new ArrayList<>();list.add("aaa");list.add("bbb");list.add("ccc");//1.迭代器/*Iterator<String> it = list.iterator();while(it.hasNext()){String str = it.next();System.out.println(str);}*///2.增强for//下面的变量s,其实就是一个第三方的变量而已。//在循环的过程中,依次表示集合中的每一个元素/* for (String s : list) {System.out.println(s);}*///3.Lambda表达式//forEach方法的底层其实就是一个循环遍历,依次得到集合中的每一个元素//并把每一个元素传递给下面的accept方法//accept方法的形参s,依次表示集合中的每一个元素//list.forEach(s->System.out.println(s) );//4.普通for循环//size方法跟get方法还有循环结合的方式,利用索引获取到集合中的每一个元素/*for (int i = 0; i < list.size(); i++) {//i:依次表示集合中的每一个索引String s = list.get(i);System.out.println(s);}*/// 5.列表迭代器//获取一个列表迭代器的对象,里面的指针默认也是指向0索引的//额外添加了一个方法:在遍历的过程中,可以添加元素ListIterator<String> it = list.listIterator();while(it.hasNext()){String str = it.next();if("bbb".equals(str)){//qqqit.add("qqq");}}System.out.println(list);}
}
以上代码展示了List的常见操作方法及五种遍历方式,每种方式适用于不同场景。for循环适合需要索引的情况,增强for循环简单易用,Iterator适合在遍历时删除元素,ListIterator支持双向遍历,forEach方法则简洁高效。