У меня есть список, который я хочу разбить способом, аналогичным методу (partition sz step col)
в Clojure или методу IterableLike.sliding( size: Int, step: Int)
функция Scala. В частности, учитывая список вроде:
(1, 2, 3)
Я хочу иметь возможность перебирать вложенные списки вроде:
(1, 2), (2, 3)
В Clojure это будет сделано с помощью:
(partition 2 1 (1, 2, 3))
а со Scala это будет:
val it = Vector(1, 2, 3).sliding(2)
Однако я у меня нет такой роскоши, и я надеюсь, что мне не придется кататься самостоятельно. У Guava есть метод разделения, который близок, но не предлагает перекрытия. Гугление тоже безрезультатно. Существует ли такой метод или мне придется использовать свой собственный?