Я так запутался в 2D-массивах в Swift. Опишу шаг за шагом. И не могли бы вы поправить меня, если я ошибаюсь.
Прежде всего; объявление пустого массива:
class test{
var my2Darr = Int[][]()
}
Во-вторых заполните массив. (например, my2Darr[i][j] = 0где i, j - переменные цикла)
class test {
var my2Darr = Int[][]()
init() {
for(var i:Int=0;i<10;i++) {
for(var j:Int=0;j<10;j++) {
my2Darr[i][j]=18 /* Is this correct? */
}
}
}
}
И, наконец, редактирование элемента в массиве
class test {
var my2Darr = Int[][]()
init() {
.... //same as up code
}
func edit(number:Int,index:Int){
my2Darr[index][index] = number
// Is this correct? and What if index is bigger
// than i or j... Can we control that like
if (my2Darr[i][j] == nil) { ... } */
}
}
var my2DArray = Array(count: 10, repeatedValue: Array(count: 10, repeatedValue: 18))И вам действительно следует перейти на более новую бета-версию. Int[][]()больше не является допустимым синтаксисом. Он был изменен на [[Int]]().