当前位置 : 主页 > 手机开发 > ios >

ios – 在Swift中填充多维数组

来源:互联网 收集:自由互联 发布时间:2021-06-11
我是 Swift的新手,我遇到了 Swift语言的问题. 我应该创建一个函数,它创建一个二维矩阵NxN并找到对角线元素的总和. 使用随机值填充数组时遇到了一些问题. 那是我的代码: import Foundati
我是 Swift的新手,我遇到了 Swift语言的问题.

我应该创建一个函数,它创建一个二维矩阵NxN并找到对角线元素的总和.
使用随机值填充数组时遇到了一些问题.

那是我的代码:

import Foundation
func diagonal (N:Int) {
    var array: [[Int]] = [[0],[0]]
    for row in 0...N {
        for col in 0...N {
            var z = Int(arc4random_uniform(100))
            array[row][col] = z
        }
    }
    println (array)
}

它不起作用.

所以我期待着你的帮助.

@ matt的回答对您当前的代码提出了一些好处,并强调了您需要修复的内容.我想提供一个填充二维数组的替代答案.您可以使用append添加新值,而不是使用零填充数组然后设置每个行/列值,例如:

func diagonal (N:Int) {
    var array: [[Int]] = []

    for row in 0..<N {
        // Append an empty row.
        array.append([Int]())

        for _ in 0..<N {
            // Populate the row.
            array[row].append(Int(arc4random_uniform(100)))
        }
    }

    println(array)
}

使用它:

diagonal(2)
// [[40, 58], [44, 83]]
网友评论