在Scala中,partition 方法用于将集合(例如 List、Array ,Set等)中的元素根据给定的条件分成两个部分,并返回一个元组,其中包含两个新的集合,第一个包含满足条件的元素,另一个包含不满足条件的元素。这是 partition 方法的语法:
def partition(p: (A) => Boolean): (Repr1, Repr2)
看下面的一个使用 partition 方法的例子:
- val numbers = List(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
-
- // 分区:将偶数和奇数分开
- val (even, odd) = numbers.partition(_ % 2 == 0)
-
- println("Even numbers: " + even) // 输出:Even numbers: List(2, 4, 6, 8, 10)
- println("Odd numbers: " + odd) // 输出:Odd numbers: List(1, 3, 5, 7, 9)
可以看到非常方便快速的就将两个集合分开了,还是比较好用的