Swift:尝试从2D数组检索字符串时,“类型为'Any'的值没有下标”

时间:2019-08-15 03:59:59

标签: arrays swift multidimensional-array

// 2D array
array = [["1", "lorem • ipsum", "other strings"], ["a","b","c"]] as NSArray

// label = UILabel // cell = dequeued cell from a collectionView
cell.label.text = array[1][0]

在'array [1] [0]'之后,Xcode提取了一个错误:

  

“任何”类型的值没有下标

对不起,我可能缺少一些琐碎的内容,但是我已经坚持了很长时间。我检查了其他帖子,但似乎没有一个可以解决此问题。

1 个答案:

答案 0 :(得分:1)

使用as NSArray并没有帮助您,并且使编译器感到困惑。删除as NSArray会使编译器意识到您正在尝试创建字符串数组的数组。

当我将此代码插入游乐场时,它会起作用:

// 2D array
let array = [["1", "lorem • ipsum", "other strings"], ["a","b","c"]]

let text = array[1][0]

Swift.print("text is \(text)")

,我们得到结果“ a”,它是数组在第1个位置的第零个元素。

更多有用的信息can be seen in this related answer