如果列表中的所有元素都满足给定的谓词,我应该如何编写一个返回true的函数?
考虑下面的列表和任何谓词:
val set = List(3, 4, 5, 6, 10)
我认为我需要写一些类似的东西:
def checkListElements(list parameters... ): Boolean = true if condition meet else false
答案 0 :(得分:7)
您不需要自己编写一个,您可以使用Iterator.forall
:
scala> var list = List(1,2,3,4,5)
set: List[Int] = List(1, 2, 3, 4, 5)
scala> list.forall(i => i % 2 == 0)
res0: Boolean = false
使用语法糖稍微短一些:
scala> list.forall(_ % 2 == 0) // Underscore will expand to i => i % 2 == 0
res2: Boolean = false