如何更改Arrays [[Int]]
数组中的下标坐标,以便对单元格进行寻址的方式将是table[column-letter][row-number]
,与Excel相同,而不是给定的当前ios table[row-number][column-number]
像这样的表:
var table = [[0, 1, 2, 3],
[1, 32, 44, 25],
[2, 12, 66, 43],
[3, 3, 4, 5]]
今天table[2][1] = 12
,但我想要table[C][1] = 44
。
我需要进行此更改,以将excel中的公式调整为我的应用程序,而无需更改Excel中的坐标系或表格。
我知道Array类中的下标函数可能会有所帮助,但到目前为止我无法使它起作用。
答案 0 :(得分:0)
您知道[2][1]
到底是什么意思吗?
我想要数组中索引为[2]
的元素,并通过添加另一个[1]
来告诉它,您需要索引为[1]
的元素位于其内部[2]
的结果。
如果Array
中的Arrays
是[[],[],[]] // no matter what is the values inside indexing is always the same
,那么如果您再看一遍,它会是空的,
[C][1] = 44
现在指出的是,让我们看看您要做什么。
[C]
您现在可能会说这是无效的,因为Integer
不是有效的索引,因为索引仅接受value = table["C"]?[1]
类型。
那么我们可以尝试什么?
那么您可以尝试字典 阅读有关它们的here
在某些时候使用字典,您将可以获得这样的值
var foo :[String:[Int]] = ["A":[1,2,3], "B":[1,2,3]]
let colm = foo["A"]?[0]
或看一下这个例子。
"A".utf16.first! - 65
编辑另一种受@ Paulw11启发的解决方案
使用此index
将返回0 table = ["MyChar".utf16.first! - 65][2]
以在数组内使用,因此您还可以说从 A到Z
CountResult