将 for 循环转换为 java 8 流

2024-06-28

我正在研究 Java 8。将这个 for 循环转换为 Java 8 Stream 时遇到了一些麻烦。

for (int y = 0; y < 5; y ++) {
    for (int x = y; x < 10; x += 2) {
        System.out.println(x+y);
    }
}

请帮忙!


转换嵌套循环的规范方法是使用flatMap在流上,例如

IntStream.range(0, 5).flatMap(i->IntStream.range(i, 10))
  .forEach(System.out::println);

您的任务中最棘手的部分是增量为 2,因为这在流 API 中没有直接等效项。有两种可能:

  1. Use IntStream.iterate(y, x->x+2)定义起始值和增量。然后你必须修改无限流limit计算元素数量:.limit((11-y)/2).

    因此循环的结果代码将如下所示:

    IntStream.range(0, 5)
        .flatMap(y->IntStream.iterate(y, x->x+2).limit((11-y)/2)
        .map(x -> x+y)).forEach(System.out::println);
    
  2. Use IntStream.range(0, (11-y)/2)创建所需数量的升序流ints 并修改它.map(t->y+t*2)让它产生你内心想要的价值观for loop.

    然后,循环的结果代码将如下所示:

    IntStream.range(0, 5)
        .flatMap(y->IntStream.range(0, (11-y)/2).map(t->y+t*2).map(x -> x+y))
        .forEach(System.out::println);
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 for 循环转换为 java 8 流 的相关文章

  • 将文件复制到资产文件夹

    经过 1 小时的搜索 我没有找到任何解决我的问题的方法 我想将文件从SD卡移动到资产文件夹 并覆盖资产文件夹中的现有文件 两个文件都是sqlite数据库 名称相同 数据略有不同 实际上 android apk 文件的行为是只读的 因此该 a
  • 何时选择 JMS API 而不是 UDP 套接字 API,反之亦然?

    有哪些原因可以促使程序员在分布式 Java 应用程序中使用 Java JMS Java 消息服务 API 而不是 java net 包的 UDP 套接字 API 或者使用 UDP 套接字 API 而不是 JMS API 如果可能 请给出应用
  • Java - 加载 .OBJ 文件

    我希望能够从 obj 文件获取信息 例如子组件的名称 那里有装载机可以做到这一点吗 Java3D 有一个 ObjectFile 但是我见过的方法列表让我觉得它不完全是我想要的 我自己解析文件会更好吗 谢谢 将要 几个月前我写了一个 java
  • 如何删除 JComboBox 的“单击并查看下拉菜单”功能?

    我有一个 JComboBox 它使用 GlazedLists 添加预输入功能 我希望用户输入一个字符串并看到预先输入的内容 这要归功于 Glazedlists 但是 我不希望用户能够单击组合框的向下箭头并检查下拉列表 我已使向下箭头不可见并
  • 如何让appium测试在iOS上运行得更快?

    目前 我正在使用 appium 进行 iOS 应用程序测试 并且我已经在 mac mini 机器上用 Java 编写了测试 我正在使用 Jenkins CI 来运行我的测试 我想更快地运行我的测试 因为目前它在 iOS 模拟器上相当慢 例如
  • Kafka模板和Kafka生产者有什么区别?

    正如我所见 Kafka 模板内部使用了 Kafka 生产者 我只是想知道确切的区别是什么 此外 与 Kafka 生产者相比 我发现 Kafka 模板中提供了许多可用的 send 方法 请帮我解决一下 如果有人知道更多的话 生产者是一种模式
  • 在连续 8 个测量到的 GC 抖动周期后关闭 JVM

    我正在编写 Apache beam BAtch 数据流 其中从 GCS 写入到 BQ 我的数据包含400万条记录 我已指定n1 HighMem 8机器类型 我的数据流以少量数据形式工作 我的用例我的模式不固定 所以我使用了 getFaile
  • Java在多显示器环境下获取鼠标位置

    我在互联网上搜索了一段时间 但没有找到任何解决我的问题的方法 我知道你可以通过以下方式获取当前鼠标位置 PointerInfo a MouseInfo getPointerInfo Point b a getLocation 问题是在多环境
  • Oreo 8.0 -“sendTextMessage()”未将消息保存到已发送文件夹

    我尝试使用 sendTextMessage 或 sendMultipartTextMessage 从我自己的应用程序发送短信 对于高于 API 19 KitKat 的手机 此消息将保存到已发送文件夹中 然而 在我的 Android 8 0
  • 正则表达式匹配 Java 中的未转义逗号

    问题描述 我试图使用 String 类提供的 split 方法将 a 拆分为单独的字符串 文档告诉我 它将围绕参数的匹配进行拆分 参数是正则表达式 我使用的分隔符是逗号 但逗号也可以转义 我使用的转义字符是正斜杠 只是为了让事情变得更容易
  • 如何在 JRuby 中初始化 SQLite3 JDBC 驱动程序?

    如何在不使用活动记录的情况下通过 JDBC 访问 SQLite3 下面是一个使用 JRuby 1 6 6 Ruby 1 8 兼容模式 和 jdbc sqlite3 3 7 2 的示例 require rubygems require jdb
  • 如何添加对嵌入消息的反应 JDA

    当我执行命令 verify 时 我尝试发送和嵌入消息 然后它发送嵌入消息 但我找不到如何添加反应 我已经嵌入了消息并发送了它 但可以添加反应 import Main Bot import net dv8tion jda core Embed
  • 模块化应用程序堆栈中的虚拟数据和单元测试策略

    如何管理用于测试的虚拟数据 将它们保留在各自的实体中 在一个单独的测试项目中 使用外部资源的序列化程序加载它们 或者只是在需要的地方重新创建它们 我们有一个应用程序堆栈 其中包含多个模块 这些模块依赖于另一个模块 每个模块都包含实体 每个模
  • 将日期从“2009-12 Dec”格式转换为“31-DEC-2009”

    2009 12 Dec should be converted to 31 DEC 2009 2010 09 Sep should be converted to 30 SEP 2010 2010 02 Feb should be conv
  • 使用 Jackson 从 JSON 文件中删除空元素

    我正在尝试从 JSON 文件中删除一个元素 Lorem Ipsum 4 Lorem Ipsum 5 keyToRemove value 使用以下代码 我可以删除键和值 for JsonNode personNode rootNode if
  • java代码中的问号

    有人能解释一下下面代码中的问号吗 INITIAL PERMANCE 也是代码中的静态最终常量 但是语法的最后一行被称为什么 Synapse AbstractCell inputSource float permanence inputSou
  • 当我尝试使用 LWJGL 库加载声音时,为什么会收到错误“NoClassDefFoundError: sun/misc/Unsafe”?

    This is the screenshot of my Eclipse project files 当我尝试启动时出现以下错误new Sound Res MouseClick ogg 我的班级中的对象AudioPlayer在第 15 行
  • 查找 Maven 使用的 Java 选项

    如何找到 Maven 正在使用哪些 Java 选项 Xmx Xms Xss 等 我发现有一种方法set它们是通过环境 MAVEN OPTS 实现的 现在我想要一种方法来确保它获得正确的设置 编辑 我相信它有所不同这个问题 https sta
  • 当生成 Apache CXF 客户端时,为什么在实例化客户端时仍然需要 WSDL?

    我想要使 用 SOAP 服务 但 WSDL 是离线提供给我的 因此导致使用 WSDL 的本地路径生成客户端 public class SoSo extends Service public final static URL WSDL LOC
  • FlyingSaucer renderer.setDocument 抛出“流已关闭”异常

    我在使用找到的简单示例创建 PDF 时遇到问题here http today java net pub a today 2007 06 26 generating pdfs with flying saucer and itext html

随机推荐

  • 在 Ruby 中使用 `module_function` 定义模块函数与使用 `self.` 定义它相同吗?

    正在定义一个模块函数module function与定义它相同self 在鲁比 也就是说 它们是否都会导致实例方法和模块方法的创建 No module M1 def self foo end end module M2 module fun
  • DateTimeOffset 如何处理夏令时?

    我将日程表以星期几 小时和分钟的形式存储在数据库中 当数据被读取时 我们创建一个DateTime对象下一次出现的那一天 一小时和一分钟 但我需要修改它以使其能够感知 DST 如有必要 我可以修改数据库 我知道DateTimeOffset存储
  • For 循环 Bash 中的大数序列[重复]

    这个问题在这里已经有答案了 在 Bash 脚本中 我使用一个简单的 for 循环 如下所示 for i in seq 1 1 500 do echo i done 这个 for 循环工作得很好 但是 当我想使用较大数字的序列 例如 10 8
  • UserPrincipal.FindByIdentity 导致 COM 错误 0x80005000

    我有一个 MVC Intranet 应用程序 最近从 Net 4 升级到 4 6 1 此应用程序从 Active Directory 查询用户详细信息 以加载控制器的 User Identity 属性中不可用的详细信息 并且直到最近才完美地
  • 在 RPM 规范文件中使用 Jenkins BUILD NUMBER

    Name My Software Version 1 0 5 Release 1 Summary This is my software 不确定是否有人以前尝试过这个或者它是否容易 但是 规范文件的版本有两个独特的指示符 版本 指定软件版本
  • 找到给定点的最小面积矩形以计算长轴和短轴长度的算法

    I have a set of points black dots in geographic coordinate value derived from the convex hull blue of a polygon red see
  • 匿名行内框是否包含空格?

    我阅读了 CSS2 1 规范 并在 匿名内嵌框 https www w3 org TR CSS22 visuren html anonymous部分 它显示了一个匿名内联框的示例 如下所示 p Some em emphasized em t
  • TYPO3 - 如何正确定义常量,将其存储到变量中并在流体模板内部使用

    在我正在开发的插件的 Fluid 模板中 有些东西是硬编码的 例如
  • 如何分发 Go 应用?

    我用 Go 编写了一个应用程序 它有两个外部依赖项需要在编译之前满足 在 Go 生态系统中 打包此应用程序以实现简单安装过程 包括安装这些远程依赖项 的最佳方法是什么 用户将如何安装我的应用程序 如果您期望用户编译您的应用程序 并且该应用程
  • 在 CSS 中创建背景图案

    我有以下图片 其中有这个有角度的条纹图案 我想知道如何使用 CSS 作为背景图案来创建这个图案 干杯 英语 编辑 我在代码笔中添加了第二个示例 与已经给出的答案类似 但添加了避免梯度的内容 http codepen io anon pen
  • C++ 优化器是否允许在函数调用之间移动语句?

    Note 这里根本没有多线程 只是优化了单线程代码 函数调用引入一个序列点 https stackoverflow com a 18516712 321013 显然 是否可以得出编译器 如果优化器内联该函数 是not是否允许在函数指令之前
  • 解决方案范围#define

    有没有办法全局声明 define 就像我想要一个文件 例如 define MONO 我希望所有源代码文件都知道这个预处理器指令已定义 我将如何实现这一目标 更新 您不能对 解决方案范围 进行定义 但下面的答案在每个项目的基础上都是可行的 您
  • 按键对数组排序 OR:为什么我的 for 循环执行无序?

    我有一个对象数组 需要根据某些配置数据按一定顺序放置 我在以正确的顺序遍历数组时遇到问题 我认为如果我创建了数组 然后使用 for 循环单步执行 我将能够正确执行代码 它工作得很好 除了在一个用例中 我将第四个项目添加到数组中 然后返回到第
  • java.nio.file 在哪里

    我正在阅读 java 文档 它告诉我应该有一个 java nio file 命名空间 但是当我尝试导入它时 预编译器抱怨它不存在 这是怎么回事 java nio fileJava 7 中出现 Java 6 或更早版本中没有 您一定正在阅读J
  • C# - 将“.txt”文件保存到项目根目录

    我编写了一些代码 需要我保存文本文件 但是 我需要将其保存到我的项目根目录 以便任何人都可以访问它 而不仅仅是我 这是有问题的方法 private void saveFileToolStripMenuItem Click object se
  • 如何在不拉动所有对象的情况下编辑或添加到特定字段

    我怎样才能做到这一点 a myFavorits Add 而不将所有对象拉到 vara 因为a有很多数据 我不想全部拉出来a对象 但我找不到方法来做到这一点 我想做 lambda 和 linq 而不返回一些东西 但 linq 总是返回一些东西
  • MVC 3 Razor 如何使复杂的 javascript 有条件?

    我有这个多行 JavaScript 片段 getJSON Url Action ReconBases modelId selectedModelId function selectItems buildDropDown SelectedRe
  • Gradle 可以在连续构建模式下重新启动正在运行的应用程序吗?

    With gradle run t每当 src 文件发生更改时 我的 java 应用程序都会在退出后很好地重新启动 但是我可以使用 Gradle 终止正在运行的应用程序并重新启动它吗 我可以看到使用 dGradle 在我的应用程序运行时检测
  • 简单的node js应用程序

    我正在尝试制作一个简单的表单 其中包含用户名和姓氏 当用户提交信息时 会显示另一个页面 我用 html 做了一个表单 但我不知道下一步该怎么做 有没有人有一个小型的 独立的表单示例 使用node js 这个例子并没有完全完成你的任务 但它是
  • 将 for 循环转换为 java 8 流

    我正在研究 Java 8 将这个 for 循环转换为 Java 8 Stream 时遇到了一些麻烦 for int y 0 y lt 5 y for int x y x lt 10 x 2 System out println x y 请帮