Из-за двух серьезных проблем ваш код не может работать в любом случае, даже если вы вызываете метод с меткой параметра arr
и объявляете результат как [[Int]]()
.
- Поскольку
counter
равно 0, первый l oop continue
s всегда и возвращается пустой массив. result[counter][counter2] = item
надежно завершает работу, потому что нет элементов с указанными индексами.
Чтобы инвертировать порядок элементов во внутренних массивах это общая c версия
func invertArr<T>(arr: [[T]]) -> [[T]]{
var result = arr
for (index, element) in arr.enumerated() {
result[index] = element.reversed()
}
return result
}
let array = [[1, 2, 3, 4], [5, 6, 7, 8]]
let inverted = invertArr(arr: array) // [[4, 3, 2, 1], [8, 7, 6, 5]]
Если вы хотите изменить также элементы во внешнем массиве return result.reversed()