加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

XXXSummaryStatistics java-10中的新构造函数

发布时间:2020-12-15 00:43:37 所属栏目:Java 来源:网络整理
导读:我看到 java-10为IntSummaryStatistics(LongSummaryStatistics和DoubleSummaryStatistics)添加了一个构造函数,该构造函数接受4个参数,即count,min,max和sum. 我理解为什么no-args构造函数存在,所以它将用于简化,如: ..stream().collect(Collectors.summariz
我看到 java-10为IntSummaryStatistics(LongSummaryStatistics和DoubleSummaryStatistics)添加了一个构造函数,该构造函数接受4个参数,即count,min,max和sum.

我理解为什么no-args构造函数存在,所以它将用于简化,如:

..stream().collect(Collectors.summarizingInt(Class::someFunction))

这是有道理的,但为什么需要添加带有4个参数的构造函数? (我在自己的答案中做了一个假设,但如果不是这样的话,我很乐意收回它.)

解决方法

请注意,虽然今天在参考实现中没有发生这样的优化,但像IntStream.rangeClosed(from,to).summaryStatistics()这样的操作不需要实际迭代所有值.

它可以简单地返回
新的IntSummaryStatistics((long)to-from 1,from,to,((long)from to)*((long)to-from 1)/ 2).

如上所述,这种优化今天不会发生,但有一个例子,有时,有一些方法可以计算这样的统计数据,而不必迭代每个值,因此填充xxxSummaryStatistics的唯一方法是接受单个值(和组合,但这需要一个必须以某种方式填充的已存在的统计实例).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读