一、List 简介
List 是 Java 语言中一种常见的动态数组类型。List 的元素是有序的,可以通过索引访问。在 Java8 中,List 新增了一些方法,大大增强了 List 的操作能力。
首先,我们来看一下如何创建并初始化一个 List:
List<String> list = new ArrayList<>(); list.add("A"); list.add("B"); list.add("C");
在上面的代码中,我们使用了 ArrayList 来创建了一个 List,并向 List 中添加了三个元素。
二、List 常见操作
1. 遍历 List
遍历 List 是一个非常常见的操作。在 Java8 中,我们可以使用 forEach 来遍历 List:
list.forEach(s -> System.out.println(s));
上面的代码中,我们使用 forEach 方法和 Lambda 表达式来遍历 List,并输出了每个元素的值。
2. 判断 List 是否为空
Java 中经常需要判断一个 List 是否为空,我们可以使用 isEmpty 方法来判断。
boolean empty = list.isEmpty();
isEmpty 方法将会返回一个 boolean 值,表示当前 List 是否为空。
3. 获取 List 的长度
获取 List 中元素的个数,我们可以使用 size 方法:
int length = list.size();
size 方法返回当前 List 中元素的个数。
4. 查找某个元素是否在 List 中
我们可以使用 contains 方法来判断 List 中是否包含某个元素:
boolean contains = list.contains("A");
contains 方法将会返回一个 boolean 值,表示当前 List 是否包含传入的元素。
5. 删除 List 中的元素
在 List 中删除某个元素是经常会遇到的操作。在 Java8 中,我们可以使用 removeIf 方法,并结合 Lambda 表达式来删除 List 中符合条件的元素:
list.removeIf(s -> s.equals("A"));
上面的代码中,我们使用 removeIf 方法和 Lambda 表达式来删除 List 中值为 "A" 的元素。
三、Java8 List 新增方法
1. stream 方法
在 Java8 中,List 新增了 stream 方法,可以对 List 进行流式处理操作。从而可以更方便的对 List 进行过滤、映射等操作。
list.stream().filter(s -> s.startsWith("A")).forEach(System.out::println);
上面的代码中,我们使用 stream 方法对 List 进行过滤操作,并输出符合条件的元素。
2. removeIf 方法
Java8 中,List 新增了 removeIf 方法,该方法可以删除 List 中符合条件的元素。和上面例子中一样,我们可以通过结合 Lambda 表达式来删除 List 中的元素。
list.removeIf(s -> s.equals("A"));
removeIf 方法将返回一个 boolean 值,表示是否成功删除符合条件的元素。
3. replaceAll 方法
在 Java8 中,List 新增了 replaceAll 方法,该方法可以对 List 中的元素进行批量替换。
list.replaceAll(s -> s + "_new");
在上面的代码中,我们使用 replaceAll 方法对 List 中的元素进行了批量替换。
4. sort 方法
在 Java8 中,List 新增了 sort 方法,该方法可以对 List 进行排序操作。通过传入 Comparator 接口的实现类,可以对 List 进行自定义排序。
list.sort((s1, s2) -> s1.compareTo(s2));
上面的代码中,我们对 List 进行升序排序操作。
总结
本文对 Java8 中 List 的常见操作和新增方法进行了详细的介绍。通过了解这些方法,我们可以更加方便地对 List 进行操作,并提高代码的效率。同时,我们需要根据实际情况,选择不同的方法来进行操作。