下标数组更改坐标

时间:2018-10-23 10:16:42

标签: ios swift

如何更改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类中的下标函数可能会有所帮助,但到目前为止我无法使它起作用。

1 个答案:

答案 0 :(得分:0)

  

今天的桌子2 = 12,但我想要桌子C = 44。

您知道[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