Как сгруппировать числа в пары, которые находятся в списке?

У меня есть вот такой список

val valuesToAdd = listOf(18, 73, 44, 6, 33, 22, 7, 5)

Как сделать вот такой список [[18, 73], [44, 6], [33, 22], [7, 5]]


Ответы (2 шт):

Автор решения: alezhu
val valuesToAdd = listOf(18, 73, 44, 6, 33, 22, 7, 5)
val split = valuesToAdd.withIndex().partition { it.index % 2 == 0 }
val values = split.first.zip(split.second) { a, b -> listOf(a.value, b.value) }
→ Ссылка
Автор решения: Эникейщик

Применить функцию chunked(size: Int). Разделяет исходный список на подсписки, длиной не более size.

val valuesToAdd = listOf(18, 73, 44, 6, 33, 22, 7, 5)
val values = valuesToAdd.chunked(2)
→ Ссылка