在 Java 编程中,List 是一种非常常见且强大的数据结构,它提供了许多灵活的操作和功能,使得在处理数据时变得更加方便和高效。本文将介绍一些常用的 List 相关处理技术,并附有示例代码,帮助读者更好地理解和运用这些功能。
1. 遍历 List
遍历 List 是最基本的操作之一,可以使用 for 循环或者增强型 for 循环来实现:
List<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Orange");
// 使用普通 for 循环
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
// 使用增强型 for 循环
for (String item : list) {
System.out.println(item);
}
2. 添加和删除元素
向 List 中添加和删除元素是常见的操作,可以使用 add() 和 remove() 方法来实现:
List<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(2);
numbers.add(3);
// 删除指定位置的元素
numbers.remove(1);
// 添加元素到指定位置
numbers.add(1, 5);
System.out.println(numbers); // 输出: [1, 5, 3]
3. 获取子列表
有时候我们需要从一个大的 List 中获取一个子列表,可以使用 subList() 方法来实现:
List<Integer> numbers = new ArrayList<>();
for (int i = 1; i <= 10; i++) {
numbers.add(i);
}
List<Integer> subList = numbers.subList(2, 5);
System.out.println(subList); // 输出: [3, 4, 5]
4. List 的排序
对 List 进行排序是常见的需求,可以使用 Collections.sort() 方法:
List<Integer> numbers = new ArrayList<>();
numbers.add(5);
numbers.add(2);
numbers.add(8);
Collections.sort(numbers);
System.out.println(numbers); // 输出: [2, 5, 8]
5. 使用 Stream 处理 List
Java 8 引入了 Stream API,可以使用 Stream 来处理 List 中的元素,进行过滤、映射、归约等操作:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
// 过滤长度大于3的名字
List<String> filteredNames = names.stream()
.filter(name -> name.length() > 3)
.collect(Collectors.toList());
System.out.println(filteredNames); // 输出: [Alice, Charlie, David]