我想只执行一次转换,最后我得到一个(Array[Person], Array[Person])
元组,基于满足条件语句,其中拆分基于true, false
。
类似于.filter
,基于true, false
而不是true
来分割输出。
我目前有这个,但想在一个声明中这样做。
case class Person(age: Int)
val persons: Array[Person] = Array(Person(15), Person(17), Person(30), Person(35))
val adults: Array[Person] = persons.filter(p => isAdult(p.age))
val kids: Array[Person] = persons.filter(p => !isAdult(p.age))
def isAdult(age: Int): Boolean = age > 18
一个集合API是否可以在一次操作中执行此操作?
答案 0 :(得分:3)
是的,就像这样
persons.partition(p => isAdult(p.age))
答案 1 :(得分:0)
您可以使用partition
方法。
喜欢
persons.partition(p => isAdult(p.age))
。