Ios Swift字典的Swift数组

Ios Swift字典的Swift数组,ios,arrays,xcode,swift,dictionary,Ios,Arrays,Xcode,Swift,Dictionary,我将此数组初始化为空数组: var dataArray:[Any] = [] 我将字典添加到数据数组,如下所示: [[onlineStatus: Offline, whatDoing: , gamerTag: KgLui720, id: 2533274926939486], [onlineStatus: Offline, whatDoing: , gamerTag: BigBear46, id: 2533274801083843], [onlineStatus: Online, whatDoi

我将此数组初始化为空数组:

var dataArray:[Any] = []
我将字典添加到
数据数组
,如下所示:

[[onlineStatus: Offline, whatDoing: , gamerTag: KgLui720, id: 2533274926939486], [onlineStatus: Offline, whatDoing: , gamerTag: BigBear46, id: 2533274801083843], [onlineStatus: Online, whatDoing: Watching TV, gamerTag: PeeMilroy12, id: 2533274975595658], [onlineStatus: Offline, whatDoing: , gamerTag: BR0, id: 2533275031633640], [onlineStatus: Offline, whatDoing: , gamerTag: jerrycia224, id: 2533274959352491]]
字典数组:

var index = 0

while index < dataArray.count{
    let row = table.rowControllerAtIndex(index) as tableRowController
    let theScreenName:NSString = dataArray[index]["gamerTag"]
    row.screenNameLabel.setText(theScreenName)
    index++
}

任何帮助都将不胜感激。

您应该更具体地说明数组可以存储哪些内容,这些对象具有
字符串
键和
任何对象
值。因此,该数据类型的语法将是
[String:AnyObject]
。这应该允许您使用下标符号:

var dataArray: [[String: AnyObject]] = []
你也可以投下它:

let theScreenName: NSString = (dataArray[index] as [String: AnyObject])["gamerTag"]

但是,如果您从一开始就明确这是您的意图,您的代码将更加连贯。

谢谢您的回答!我还是有点小麻烦。你给我的“让屏幕名称”代码表示“Int”不能转换为“Range”@GregPappok你是否尝试过用我在这里给出的第一行代码替换你问题中的第一行代码,并在尝试第一部分之前保持该部分不变?那是我推荐的方式。是的,我推荐了。我刚想出来:让屏幕名:NSString=(dataArray[index]作为[String:AnyObject])[“gamerTag”]作为NSString为我工作。谢谢@格雷帕波克我很高兴能帮上忙。