0
点赞
收藏
分享

微信扫一扫

java steam合并list

小云晓云 2023-07-19 阅读 65

Java Stream 合并 List

在 Java 中,Stream 是一种操作集合的高级抽象。它提供了一种优雅且功能强大的方式来处理集合数据。在某些情况下,我们可能需要将多个 List 合并成一个 List。本文将介绍如何使用 Java Stream 来合并多个 List。

方案1:使用 addAll() 方法

Java 中的 List 接口提供了一个 addAll() 方法,可以将一个 List 中的所有元素添加到另一个 List 中。我们可以使用该方法来合并多个 List。下面是一个示例代码:

import java.util.ArrayList;
import java.util.List;

public class ListMergeExample {
    public static void main(String[] args) {
        List<String> list1 = new ArrayList<>();
        list1.add("A");
        list1.add("B");

        List<String> list2 = new ArrayList<>();
        list2.add("C");
        list2.add("D");

        List<String> mergedList = new ArrayList<>();
        mergedList.addAll(list1);
        mergedList.addAll(list2);

        System.out.println(mergedList); // 输出:[A, B, C, D]
    }
}

在上面的示例中,我们首先创建了两个 List:list1list2,然后创建了一个空的 List mergedList。接下来,我们使用 addAll() 方法将 list1list2 中的元素添加到 mergedList 中。最后,我们打印出合并后的结果。

方案2:使用 Java 8 Stream 的 flatMap() 方法

Java 8 引入了 Stream API,它提供了更简洁和灵活的方式来操作集合。我们可以使用 Stream 的 flatMap() 方法来合并多个 List。下面是一个示例代码:

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class ListMergeExample {
    public static void main(String[] args) {
        List<String> list1 = new ArrayList<>();
        list1.add("A");
        list1.add("B");

        List<String> list2 = new ArrayList<>();
        list2.add("C");
        list2.add("D");

        List<String> mergedList = Stream.of(list1, list2)
                .flatMap(List::stream)
                .collect(Collectors.toList());

        System.out.println(mergedList); // 输出:[A, B, C, D]
    }
}

在上面的示例中,我们首先创建了两个 List:list1list2。然后,我们使用 Stream.of() 方法将这两个 List 转换为一个 Stream。接下来,我们使用 flatMap() 方法将各个 List 的元素流合并成一个单一的流。最后,我们使用 collect() 方法将流中的元素收集到一个新的 List 中。

总结:本文介绍了两种使用 Java Stream 来合并多个 List 的方法。第一种方法是使用 List 的 addAll() 方法,将一个 List 中的所有元素添加到另一个 List 中。第二种方法是使用 Java 8 Stream 的 flatMap() 方法,将多个 List 合并成一个单一的流,然后将流中的元素收集到一个新的 List 中。这些方法都提供了一种简单且高效的方式来合并多个 List。根据实际需求,您可以选择适合您的场景的方法来合并 List。

希望本文对您理解和使用 Java Stream 合并 List 有所帮助!如有疑问,请随时提问。

举报

相关推荐

0 条评论