当前位置: 首页 > 面试题库 >

Java 7中的Java流

谭富
2023-03-14
问题内容

我的问题可能太广泛了,答案可能是简单的“否”,但我不得不问。

Java 7中有(Java
8)流 *的等效实现吗?

我熟悉(Java 8)流,但是我的项目要求是使用Java 7。

*不要与inputStream和outputStream混淆。


问题答案:

在官方API中,没有。

Java 7没有更多的公共更新。如果您是客户,您可能仍然会获得较小的更新,但是对于反向移植Stream API而言,这不是(或者非常非常不可能)。

稍加挖掘,您可能会发现StreamSupport。我从未测试过它,但显然它的目标是将Stream API移植到Java
6/7,如果您想将其与lambda表达式结合使用,也可以使用retrolambda。

功能性Java可能很有趣。它与Stream
API的意图并不完全相同,但是如果您的目标是过滤/映射/等。一个可能适合您需求的列表/数组。对于例如:

final List<Integer> b = list(1, 2, 3).map(add.f(-1));
listShow(intShow).println(b); // [0, 1, 2]

最后,您可以研究Scala的Stream API。由于Scala也在JVM上运行,因此您可以混合代码。也许这并不是您要找的东西,但是如果需要,值得尝试。



 类似资料:
  • 支持哪些版本的Java? 但是,生成失败,出现以下消息:

  • 问题内容: 首先,我希望这不是问题,所以我开始了一个新话题。我不知道如何根据已经回答的问题提出问题,所以我做到了。 我对Java很陌生,以下是我的问题。我正在编写一个小型聊天程序,并且使用带有的来显示不同颜色的文本,显示笑脸和显示超链接。 我的问题是,经过一些研究,我发现问题可能是由于Java7造成的,我无法使换行器正常工作。我希望文本自动换行,并包裹在超出组件宽度的字符串中间。自动换行可以很好地

  • 我使用intellij IDEA进行开发,我注意到IDEA在Java7上运行时,maven插件在下载依赖项时出现了问题(我在Windows7)。然而,在Java6上运行它就没有这个问题了。 以下是idea.log的摘录 我按照建议做了以下几点 > 确保我的/etc/hosts文件中有 将添加到我的idea64.exe.vmoptions,因此文件如下所示 谢谢你的帮助。

  • 问题内容: JLS v7的第18章中的语法似乎与文档中其他地方的结构不同,但是对我而言似乎有所不同。具体在第15章中,规则是: 这样就可以创建一个RelationalExpression(并因此生成一个EqualityExpresson),而该关系又可以在创建EqualityExpression的EqualityExpression规则中用作LHS 。 但是当看第18章中的语法时,他们做了一些简化

  • 我遇到了一个奇怪的问题——供应商使用TLS SSLv3,同时使用自签名客户端和服务器证书。Java1.5和Java1.6没有这个问题——只需将客户端证书和私钥导入密钥库,将服务器公共证书导入信任库。一切都很好。然而,在Java7中,服务器证书无法被信任,即使使用的是同一个信任库。我尝试过使用Java7 (1.7.03, 04和05、x86和x64版本)的视窗和红帽,但没有成功。 我从头开始重新创建

  • Java7编译器是如何处理多捕获块的?一个简单的实现是生成字节码,就好像存在多个catch块一样。然而,我从多个来源得到的信息表明,情况并非如此--处理多个异常类型的catch块在编译期间不会产生重复的字节码。 那么,它是如何工作的呢?是否有一个新的字节码指令告诉JVM关于多捕获块?

  • 我有一个字符串,其中我需要拆分它并存储在ArrayList中,如下所示;所有这些都使用Java7。 下面是我的程序的输入; 我在这里试图实现的是一个数组列表,如下所示。 我编写了一个示例代码,但似乎没有将elementB分组到列表中。我们如何将这两个元素组合成一个列表。 示例代码: 我得到下面的输出,其中elementB没有改变,而是重复自身。有人能给我指路吗

  • 我知道Java8为静态方法添加了新的隐式类型特性,我认为这可能与此有关。我试图重构参数并将它们强制转换为预期的参数,但结果是相同的错误: 调用?