在Java中,使用flatMap
处理嵌套列表时,需要先将嵌套列表扁平化为一个单一的列表。这可以通过递归实现。下面是一个示例,展示了如何使用flatMap
处理嵌套列表:
import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class FlatMapNestedList { public static void main(String[] args) { List> nestedList = Arrays.asList( Arrays.asList(1, 2, 3), Arrays.asList(4, 5, 6), Arrays.asList(7, 8, 9) ); List
flattenedList = flattenList(nestedList); System.out.println("Flattened list: " + flattenedList); } public static List flattenList(List > nestedList) { return nestedList.stream() .flatMap(list -> list.stream()) .collect(Collectors.toList()); } }
在这个示例中,我们首先创建了一个包含嵌套列表的nestedList
。然后,我们使用flattenList
方法将嵌套列表扁平化为一个单一的列表。flattenList
方法使用stream()
和flatMap
方法将嵌套列表的每个元素转换为单个元素,并使用collect()
方法将它们收集到一个新的列表中。
运行这个示例,你将看到以下输出:
Flattened list: [1, 2, 3, 4, 5, 6, 7, 8, 9]
这个示例展示了如何使用flatMap
处理嵌套列表。你可以根据需要修改代码以处理其他类型的嵌套列表。