如何在Swift中访问2D数组中的元素

Gre*_*reg 0 arrays swift

我想从一个单一的阵列读取字符串变量(或更精确地从字符串数组的数组,因为在接受的答案澄清)的斯威夫特.以下内容读取整个数组.

    var array = [["W", "X", "Y", "Z"], ["A", "B", "C", "D"]]
    print(array[0],array[1])
Run Code Online (Sandbox Code Playgroud)

如何读取一对变量,例如"X"和"D"?

kei*_*ter 6

array是一个字符串数组的数组.或者,输入Array<Array<String>>.array[0]将返回数组的第一个元素,这是一个字符串数组,或Array<String>.这意味着您必须访问该数组的另一个元素.一步一步,代码看起来像这样:

let array = [["W", "X", "Y", "Z"], ["A", "B", "C", "D"]]

let firstArray = array[0]  // ["W", "X", "Y", "Z"]
let X = firstArray[1]  // "X"

let secondArray = array[1]  // ["A", "B", "C", "D"]
let D = secondArray[3]  // "D" 
Run Code Online (Sandbox Code Playgroud)

短版本看起来像这样:

print(array[0][1], array[1][3])  // "X D"
Run Code Online (Sandbox Code Playgroud)


Mor*_*lde 5

只需提供第一级的索引,然后是第二级.

print(array[1][3])
Run Code Online (Sandbox Code Playgroud)

您还可以通过这种方式迭代多个级别的数组

for subarray of array {
    for element of subarray {
        print(element)
    }
}
Run Code Online (Sandbox Code Playgroud)