Коллекции Scala - Метод разделения

Метод partition () является членом трейта TraversableLike, он используется для запуска метода предиката для каждого элемента коллекции. Он возвращает две коллекции, одна коллекция состоит из элементов, удовлетворяющих заданной функции предиката, а другая коллекция состоит из элементов, которые не удовлетворяют данной функции предиката.

Синтаксис

Ниже приводится синтаксис метода карты.

def partition(p: (A) ? Boolean): (Repr, Repr)

Здесь метод разделения принимает в качестве параметра функцию-предшественницу. Этот метод возвращает коллекции.

Применение

Ниже приведен пример программы, показывающей, как использовать метод разделения -

пример

object Demo {
   def main(args: Array[String]) = {
      val list = List(1, 2, 3, 4, 5, 6, 7)
      //apply operation to get twice of each element.
      val (result1, result2) = list.partition(x=>{x % 3 == 0})
      //print result
      println(result1)
      println(result2)      
   }
}

Сохраните указанную выше программу в Demo.scala. Следующие команды используются для компиляции и выполнения этой программы.

Команда

\>scalac Demo.scala
\>scala Demo

Вывод

List(3, 6)
List(1, 2, 4, 5, 7)