lambda小技巧:List变数组 reduce flatMap......

本文介绍了如何使用Java Lambda将List<Integer>转化为int数组,利用mapToInt方法及其工作原理。此外,还探讨了reduce操作,通过官方说明理解其如何进行累加等计算,并给出具体示例。同时推荐了一篇关于flatMap的详细解释文章链接,帮助理解如何将List<Character>合并成String。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

List< Integer > 变为int[]:

list.stream().mapToInt(Integer::intValue).toArray()
mapToInt 方法:就是让list这个stream中的每个元素,调用里面的这个转为int方法的方法(Returns an {@code IntStream} consisting of the results of applying the
given function to the elements of this stream.)
IntStream mapToInt(ToIntFunction<? super T> mapper)

reduce

这里是引用
这个是reduce的官方说明,简洁易懂,它相当于下面这个循环。
identity就是初始值,每次和stream中的一个值进行一次转换,更新到identity上,然后再和下一个转换,再更新identity!直到最后输出最后的identity

例子:累加啥的就不说了,我这里用List< Character >变成List< String >
在这里插入图片描述
characters是一个List< Character >,这些character组合起来是一个string

flatMap

在这里插入图片描述
这篇文章对flatMap解释的很好。可以参考:
https://zhuanlan.zhihu.com/p/103686124

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值