在Scala中是否有一种简单有效的方法来执行以下操作?
val elements = List(1, 2, 3, 4, 5, 6)
val (odd, even) = elements.filter(_ % 2 == 0)
我知道groupBy
,但我希望能够使用可以提取为单独值的常数组的东西。
答案 0 :(得分:5)
List.partition
做你想做的事:
val (even, odd) = elements.partition(_ % 2 == 0)
请注意,它仅适用于两个最终组。