У меня есть ArrayList элементов, которые мне нужны для получения комбинаций пар.
например.[A, B, C]
будет преобразовано в [[A, B], [A, C], [B, C]]
В настоящее время я использую обычный способ достижения этого
for(i in 0 until arr.size-1)
for(j in i+1 until arr.size)
//do stuff with arr[i], arr[j]
, и если мне понадобятся комбинации из более чем двух элементов, я, вероятно, напишурекурсивная функция, чтобы сделать то же самое.Меня беспокоит то, что этот метод все еще старомоден и, возможно, не такой функциональный, как Котлин, как
Есть ли лучший способ добиться этого, а также использовать большее количество элементов в комбинации, не переходя в рекурсию?