首页 >Java >java教程 >如何在 Java 8 中有效地展平嵌套列表?

如何在 Java 8 中有效地展平嵌套列表?

Patricia Arquette
Patricia Arquette原创
2024-12-20 02:58:09386浏览

How Can I Efficiently Flatten a Nested List in Java 8?

在 Java 8 中展平嵌套列表

给定一个列表>对于潜在的嵌套列表,您可能需要将其合并到单个 List 中。保持原始的迭代顺序。要在 Java 8 中高效地完成此任务,请考虑以下方法:

使用 flatMap 和收集器

利用 Java 8 的 flatMap 操作的强大功能将嵌套列表展平为单流。该过程涉及使用 List::stream 将每个内部列表转换为流,然后使用 flatMap 将它们展平。

要保留元素的原始顺序,您可以使用 Collectors.toList() 收集结果,这会创建来自展平流的新列表,确保维持元素的顺序。

代码示例:

List<List<Object>> list = ...; // Initialize your nested list

List<Object> flat = list.stream()
        .flatMap(List::stream)
        .collect(Collectors.toList());

此代码首先将嵌套列表转换为流,使用 flatMap 将它们展平为单个流,最后将结果收集到新的 List 中。称为 Flat,它以相同的迭代顺序包含原始嵌套列表中的所有对象。

以上是如何在 Java 8 中有效地展平嵌套列表?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn