首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

reducing和reduce

首先是写法差异,对于只有一个参数的,这个参数指定了我们聚合的操作,此处我做一个累加,返回值为Optional证明有可能不存在值,就没有累加 Optional sumOpt = Stream.iterate...10).collect(reducing(Integer::sum)); System.out.println(sumOpt); // Optional[45] sumOpt = Stream.iterate...sumOpt); // Optional[45] 两个参数的,这里第一个参数为默认值,这里返回的是默认值+累加后的结果,此处默认值只能指定为相同类型 Integer sum = Stream.iterate...).limit(10).collect(reducing(10, Integer::sum)); System.out.println(sum); // 55 sum = Stream.iterate...55 到此为止,其实都差不多,下面是三个参数的,这个三参用于聚合为其他类型的默认值,第一个参数还是默认值,第二个参数和第三个参数就有区别了 BigDecimal sumDecimal = Stream.iterate

87710
领券