首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Scala forall示例?

Scala forall示例?
EN

Stack Overflow用户
提问于 2012-09-23 03:57:25
回答 3查看 49.1K关注 0票数 51

我尝试了谷歌搜索,但找不到一个像样的forall示例。是干什么的呢?为什么它需要一个布尔函数?

请给我一个参考资料(除了Scaladoc)。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-09-23 04:00:09

forall方法接受返回布尔值的函数pforall的语义是:如果对于集合中的每个xp(x)都为true,则返回true

所以:

代码语言:javascript
复制
List(1,2,3).forall(x => x < 3)

表示:如果1、2和3小于3,则为true,否则为false。在这种情况下,它的计算结果为false,因为不是所有元素都小于3: 3不小于3。

还有一个类似的方法exists,如果集合中至少有一个元素x使p(x)为true,则该方法返回true

所以:

代码语言:javascript
复制
List(1,2,3).exists(x => x < 3)

表示:如果1、2和3中至少有一个小于3,则为true,否则为false。在这种情况下,它将计算为true,因为它是某些元素小于3的情况:例如,1小于3。

票数 91
EN

Stack Overflow用户

发布于 2013-01-06 10:52:03

下面是一个快速示例,演示如何使用Scala脚本使用此函数。

使用创建myScript.scala文件

代码语言:javascript
复制
println(args.forall(p => (p.equals("a"))))

并使用以下命令调用它:

代码语言:javascript
复制
scala myScript.scala a a a  // true
scala myScript.scala a b c  // false
票数 4
EN

Stack Overflow用户

发布于 2018-06-17 20:04:55

Scala的forall也是一个很好的工具,可以用early exist将逻辑应用于布尔值列表

代码语言:javascript
复制
val evalResults: List[Boolean] = List(evaluateFunc1(), evaluateFunc2(), evaluateFunc3(), evaluateFunc4(), evaluateFunc5())

evalResults.forall(result => result == true)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12547235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档