首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在map中,`mapNotNull`的等价物是什么?

在Kotlin中,mapNotNull的等价物是flatMap

mapNotNull是一个高阶函数,它接收一个lambda表达式作为参数,并将其应用于集合中的每个元素。它返回一个新的集合,其中包含lambda表达式返回非空结果的元素。

flatMap也是一个高阶函数,它接收一个lambda表达式作为参数,并将其应用于集合中的每个元素。不同的是,flatMap的lambda表达式返回一个集合,而不是单个元素。最后,flatMap将所有返回的集合合并成一个新的集合。

mapNotNullflatMap的区别在于,mapNotNull只保留lambda表达式返回非空结果的元素,而flatMap将所有返回的集合合并成一个新的集合。

以下是flatMap的使用示例:

代码语言:txt
复制
val list = listOf(1, 2, 3, 4, 5)
val result = list.flatMap { if (it % 2 == 0) listOf(it, it * 2) else emptyList() }
println(result) // 输出:[2, 4, 4, 8]

在上面的示例中,我们使用flatMap将原始列表中的偶数元素和它们的两倍值合并成一个新的列表。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券