Recentemente, mi sono ritrovato a usare sliding (n, n) quando ho bisogno di iterare le raccolte in gruppi di n elementi senza rielaborarli. Mi stavo chiedendo se sarebbe più corretto iterare quelle collezioni usando grouped (n). La mia domanda è se c'è un motivo speciale per utilizzare l'uno o l'altro per questo caso specifico in termini di prestazioni.Scala: sliding (N, N) vs grouped (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))
L'implementazione è ASCIUTTA, quindi non importa quale chiami, per le prestazioni. https://github.com/scala/scala/blob/v2.11.7/src/library/scala/collection/Iterator.scala#L1039 –
@ som-snytt buono a sapersi! Aggiornerò con quello! – childofsoong