Q
斯卡拉例如?
39
A
回答
64
forall
方法采用返回布尔值的函数p
。 forall
的语义说:return true
如果对于集合中的每个x
,p(x)
为true。
所以:
List(1,2,3).forall(x => x < 3)
指:true
如果为1,2和3是小于3,false
否则。在这种情况下,将计算为false
,因为它不是所有元素都小于3的情况下:3是不小于3
有一个类似的方法exists
返回true
如果存在至少一个元素x
,使p(x)
为真。
所以:
List(1,2,3).exists(x => x < 3)
意味着:true
如果的 1,2,和3中的至少一个小于3,false
否则。在这种情况下,它将评估为true
,因为在某些元素小于3的情况下:例如1小于3.
3
一个简单的例子,说明如何使用Scala
脚本来玩这个功能。
创建myScript.scala
文件,
println(args.forall(p => (p.equals("a"))))
与
scala myScript.scala a a a // true
scala myScript.scala a b c // false
+4
为什么不使用REPL? –
0
还不错叫它要记住,你的封内就可以执行更多的指令,例如分配了变量的作用域的
def main(args: Array[String]){
var country = ""
var environment = ""
val isValid = args.sliding(2, 2).forall{
case Array("--env", value : String) => {
environment = value
Array("test", "staging", "prod").contains(value.toLowerCase())
}
case Array("--country", value : String) => {
country = value
Array("BE", "NL", "FR").contains(value.toLowerCase())
}
case _ => false
}
if(!isValid){
println ("Wrong usage. Please insert params in the following format: --country {NL,BE,UK,FR} --env {test, staging, prod}")
return
}
else
println (s"Correct usage. env=$environment country=$country")
}
相关问题
- 1. KafkaRDD斯卡拉小例子
- 2. 斯卡拉咖喱例
- 3. 斯卡拉案例类这()
- 4. 斯卡拉值类,用例
- 5. 简单的斯卡拉范例斯卡拉
- 6. 斯卡拉通过示例:斯卡拉spawn函数2.11.7
- 7. 斯卡拉斯状态单子例子
- 8. 斯卡拉协文档例如允许
- 9. 斯卡拉 - 派遣例如不工作
- 10. 缓存斯卡拉案例类实例
- 11. 斯卡拉在斯卡拉类
- 12. 如何从斯卡拉(卡斯巴)
- 13. 斯卡拉案例类字段
- 14. 斯卡拉映射Json和案例类
- 15. 斯卡拉案例分类数组
- 16. 斯卡拉2.10:动态实例case类
- 17. 斯卡拉案例类的反思
- 18. 斯卡拉案例类建模
- 19. Apache Spark:问题与斯卡拉示例
- 20. 斯卡拉:转换地图案例类
- 21. 星火斯卡拉计数在图例
- 22. 斯卡拉案例类地图扩展
- 23. 斯卡拉载体案例类
- 24. 斯卡拉案例类转换
- 25. 斯卡拉简单示例阵营
- 26. 斯卡拉地图案例类转换
- 27. 斯卡拉案例类模块化
- 28. 斯卡拉递归案例类减少
- 29. 斯卡拉案例类复制执行
- 30. 斯卡拉案例类重载
http://www.scala-lang.org/api/current/scala/collection/immutable/List.html:'测试一个谓词是否适用于这个列表的所有元素.' – MikkoP
也许你因为你的想法而感到困惑而不是(重复遍历所有元素) –
是的,我在想它是一个并行版本的foreach。 – Jus12