使用 Java 8 IntStream 计算阶乘?

2023-12-01

我对 Java 8 和 lambda 表达式比较陌生Stream,我可以使用计算阶乘for循环或递归。但有没有办法使用IntStream计算一个数的阶乘?即使阶乘在整数范围内我也很好。

我通读了IntStream文档在这里,http://docs.oracle.com/javase/8/docs/api/java/util/stream/IntStream.html我可以看到很多方法,但不确定可以使用哪一种来计算阶乘。

例如,有rang方法说,

range(int startInclusive, int endExclusive) 返回一个顺序 有序 IntStream 从 startInclusive(包含)到 endExclusive (不包括)增量步长为 1。

因此我可以使用它向 IntStream 提供要相乘以计算阶乘的数字范围。

number = 5;
IntStream.range(1, number)

但如何将这些数字相乘以获得阶乘呢?


您可以使用IntStream::减少为了这份工作,

int number = 5;
IntStream.rangeClosed(2, number).reduce(1, (x, y) -> x * y)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Java 8 IntStream 计算阶乘? 的相关文章

随机推荐

  • 如何在R光栅中获取网格周围的等高线?

    R中有一个栅格 如何绘制等高线around网格 不连接中心或其他任何东西 真正遵循网格的边界 具有某些值 或由某些掩码标识 以下示例显示如何获取值 0 6 的区域周围的等高线 如何执行相同操作 但线条遵循网格边界 该函数应该返回一个对象以添
  • 使用 Money gem 的表单选择设置货币

    我已经在这方面工作了好几个小时 但我无法弄清楚这一点 我愿意让用户根据他在表单中填写的价格选择相应的货币 我正在使用 Money Gem https github com RubyMoney money 所有值均已正确设置 但货币仅设置为其
  • 使用 JavaScript 重新加载页面的首选方法? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 您更喜欢哪种方式重新加载当前页面 使用按钮 1
  • 在 FlatList 上 React Native“keyboardDismissMode”

    是否有可能防止键盘在滚动时消失FlatList 使用 ScrollView 时 将属性 keyboardDismissMode 设置为 none 是解决此问题的方法 但这对我在 FlatList 中不起作用 我在一个自制组件 即 Stack
  • 如何删除由 start/end Document 方法添加的 StaxEventItemWriter 标记?

    如何删除由开始 结束文档方法添加的 StaxEventItemWriter 标记 当我生成 XML 文件时 它是默认添加的 所以请任何人告诉我如何删除默认根标签 Ex
  • dplyr 创建因子水平的合计百分比

    如何使用 dplyr 为每个州创建因子变量水平的比例 例如 我想添加一个变量来指示数据框中每个州内女性的百分比 gen data state lt rep c rep Idaho 10 rep Maine 10 2 student id l
  • size_t 和 unsigned int 之间的区别?

    我很困惑size t 我在互联网上搜索过 到处都提到了这一点size t是无符号类型 因此它只能表示非负值 我的第一个问题是 如果它只用来表示非负值 为什么我们不使用unsigned int代替size t 我的第二个问题是 是size t
  • SqlDependency.Start(connectionString) 每次都返回 false

    我设置了访问数据库的权限 use DbName GRANT SUBSCRIBE QUERY NOTIFICATIONS TO dbuser use DbName GRANT SELECT ON OBJECT schema tableName
  • w3c document.forms[0].fieldname 等效项

    我一直在使用 document forms 0 fieldname value 从表单中获取 javascript 中的值 但我想使用名称来引用该字段而不是 0 这些天以来等效的是什么
  • 在 MarkLogic 8 中调用具有来自其余端点的依赖项的 xquery 库

    我们正在从 MarkLogic 6 升级到 8 并且在调用库模块时遇到了一些问题 我们有 xquery 库模块 可以从自定义 REST 扩展和非 REST xquery 调用 马克逻辑公司文档表示 REST 端点可以使用通过新 ext 端点
  • 程序化表单提交

    我想抓取网页的内容 内容是在该网站上填写并提交表格后生成的 我已经阅读了如何抓取最终结果内容 网页 但如何以编程方式提交表单 我正在使用 python 并读到我可能需要获取带有表单的原始网页 解析它 获取表单参数 然后执行 X 有人能指出我
  • 如何在应用程序中将粤语设置为语音搜索语言?

    我当前的代码在使用 ZH ISO 代码表示普通话时工作正常 但不适用于粤语 这是下面的代码 Intent i new Intent RecognizerIntent ACTION RECOGNIZE SPEECH String myLang
  • 无法在 Javascript 中动态添加项目到 Owl Carousel

    我正在尝试动态地将项目添加到猫头鹰旋转木马 我是这样做的 HTML div class owl carousel lesson carousel div class item item logo div class product item
  • SpringBoot 中的 javax.validation.constraints.Email

    我有一个经过此验证的 bean Email message Email is not valid regexp a z0 9 a z0 9 x01 x08 x0b x0c x0e x1f x21 x23 x5b x5d x7f x01 x0
  • Spring @ResponseBody 返回 JSON,但缺少键

    我正在以 JSON 格式返回 SQL 查询的结果 结果正常 但缺少键 查询中指定的列 我是否必须将类与查询关联才能获取键名称 我不认为这是 Jackson 映射 因为当我显式使用它时 对象映射器而不是让 Spring 在 ResponseB
  • 来自表视图控制器的多个 Segues

    我有一个小型应用程序 它对初始表格视图使用多个部分布局 一个部分显示 Twitter 的最新趋势 另一部分显示 Twitter 的最新故事 当我单击趋势列表中的某个项目时 我会转换到一个新的表视图控制器 该控制器显示有关该趋势的最新推文 在
  • Bash 条件管道

    如果命令返回 true 如何通过管道传输命令的输出 function open TEMPFILE mktemp u if gpg2 quiet decrypt batch passphrase 2 1 2 gt TEMPFILE then
  • 与 jquery close() 等效的 JavaScript 是什么?

    我有以下代码 它是用 DOM API 而不是 jquery 编写的 我不知道为什么 它位于用于 jquery 表单验证的提交函数内 我需要更改 parentNode 部分 以便 最接近 而不是 parent 我不擅长 JavaScript
  • Nimbus 外观和感觉调整菜单栏的颜色

    我正在尝试调整 Nimbus 外观和感觉的颜色 但它只能部分工作 特别是我在调整菜单栏的颜色时遇到问题 这是一个运行示例 import java awt Color import java awt Dimension import java
  • 使用 Java 8 IntStream 计算阶乘?

    我对 Java 8 和 lambda 表达式比较陌生Stream 我可以使用计算阶乘for循环或递归 但有没有办法使用IntStream计算一个数的阶乘 即使阶乘在整数范围内我也很好 我通读了IntStream文档在这里 http docs