2025-11-25 在Java中如何使用flatMap扁平化集合 在Java中如何使用flatMap扁平化集合 在现代Java开发中,Stream API已经成为处理集合数据的标准工具之一。它不仅让代码更加简洁,还提升了可读性和功能性。而在众多Stream操作中,flatMap是一个特别强大但初学者容易忽略的方法。它的核心作用是“扁平化映射”,即将一个包含多个子集合的结构,转化为一个统一的一维流,从而方便后续的过滤、映射或统计操作。想象一下,你有一个List<List<String>>类型的对象,里面保存着多个学生选课信息,每个子列表代表一个学生的课程列表。现在你想获取所有课程的去重集合,你会怎么做?传统方式可能需要两层循环,逐个遍历并添加到新的集合中。而使用flatMap,这个过程可以被极大简化。我们先从map和flatMap的区别说起。map用于将流中的每个元素通过函数转换成另一个元素,转换前后元素数量不变。比如将字符串转为大写,数字平方等。而flatMap不同,它接受一个返回流的函数,并将这些流“摊平”成一个整体流。换句话说,flatMap不仅做了映射,还做了合并。举个例子:java List<List> courses = Arrays.asList(... 2025年11月25日 47 阅读 0 评论