当前位置: 首页 > 知识库问答 >
问题:

java 8中. stream()的默认实现是什么?

沈健
2023-03-14

它只是说:

返回以此集合为源的顺序流。

当spliterator()方法无法返回不可变、并发或后期绑定的spliterator时,应重写此方法。(有关详细信息,请参见拆分器()

但我找不到任何显示它如何创建和返回新流的代码。

double average = roster
.stream()
.filter(p -> p.getGender() == Person.Sex.MALE)
.mapToInt(Person::getAge)`enter code here`
.average()
.getAsDouble();
  • 名册是一个列表

共有1个答案

孙嘉
2023-03-14

基本上,整个流实现是包私有的,因此您不会在docs.oracle.com.出现任何内容

但是看看这里的源代码:http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/share/classes/java/util/stream

您可以从大多数类用来创建各种流的StreamSupport开始。

 类似资料:
  • 问题内容: 如果没有覆盖该方法,默​​认的实现是什么? 问题答案: 然后,此类从其祖先之一继承。如果它们都不覆盖它,则使用Object.hashCode。 从文档: 在合理可行的范围内,由Object类定义的hashCode方法确实为不同的对象返回不同的整数。(通常通过将对象的内部地址转换为整数来实现,但是JavaTM编程语言不需要此实现技术。) 因此默认实现是特定于JVM的

  • 问题内容: 我经常使用时髦的东西作为字典的键,因此,我想知道什么是正确的方法-这是通过为对象实现良好的哈希方法实现的。我知道这里提出的其他问题[是实现 hash的好方法,但我想了解默认值如何用于自定义对象,以及是否有可能依赖它。 我注意到可变项显然是不可哈希的,因为会引发错误……但是奇怪的是,自定义类是可哈希的: 那么,有人知道此默认哈希函数如何工作吗?通过了解这一点,我想知道: 如果我放置与字典

  • 我正在使用JAXP XSLT API(javax.xml.transform)来转换xml文件。 TransformerFactory的javadoc表示:它使用以下有序查找过程来确定要加载的TransformerFactory实现类: 使用javax。xml。使改变TransformerFactory系统属性 使用JRE目录中的属性文件“lib/jaxp.properties”。此配置文件采用标

  • 主要内容:1 Java8 默认方法的介绍,2 Java8 默认方法的案例1 Java8 默认方法的介绍 Java提供了一种在接口内部创建默认方法的功能。在接口内部定义并带有默认标记的方法称为默认方法。这些方法是非抽象方法。 2 Java8 默认方法的案例 在下面的示例中,Sayable是一个功能接口,其中包含默认值和抽象方法。默认方法的概念用于定义具有默认实现的方法。您还可以覆盖默认方法,以为该方法提供更具体的实现。 输出结果为:  

  • 问题内容: 如果我创建一个新的Date()对象。它将打印的默认时区是什么。 我的机器在GMT中运行。我正在创建一个新的Date()对象。如果我打印为什么它显示周四7月5日8时21分05秒 PKT 2012年它是如何花费的时区为PKT? 问题答案: 日期本身没有任何时区。它的方法使用当前的默认时区返回表示该日期的字符串: 在我的机器上执行上述代码会导致以下输出:

  • Kubernetes的pods(部署)活跃性和就绪性问题可以用这个初始延迟来配置----这意味着问题将在容器启动后的这多次发送之后开始。如果没有指定,默认值是多少?我好像找不到了。periodSeconds的默认值记录为10秒。 谢谢