В последнее время я обнаружил, что я использовал скользящие (n, n), когда мне нужно итерировать коллекции в группах из n элементов без повторной обработки каких-либо из них. Мне было интересно, было бы правильнее перебирать эти коллекции, используя grouped (n). Мой вопрос в том, есть ли специальная причина использовать тот или иной конкретный случай с точки зрения производительности.Scala: slide (N, N) vs сгруппировано (N)
val listToGroup = List(1,2,3,4,5,6,7,8)
listToGroup: List[Int] = List(1, 2, 3, 4, 5, 6, 7, 8)
listToGroup.sliding(3,3).toList
res0: List[List[Int]] = List(List(1, 2, 3), List(4, 5, 6), List(7, 8))
listToGroup.grouped(3).toList
res1: List[List[Int]] = List(List(1, 2, 3), List(4, 5, 6), List(7, 8))
Реализация DRY, поэтому не имеет значения, что вы называете, для производительности. https://github.com/scala/scala/blob/v2.11.7/src/library/scala/collection/Iterator.scala#L1039 –
@ som-snytt хорошо знать! Я обновлю это! – childofsoong