2016-11-01 44 views

回答

0

你需要你传递什么到函数,以访问索引和值键的更好的主意。不幸的是,你不能下标-index- AnyObject。 Xcode首先需要更多信息。尝试是这样的:

func makeDataSource(data:[[String:String]]) { 

    for i in 0..< data.count { 
     print(data[i]["make"] 
    } 
} 

如果你不知道,如果你可以通过你的数据[字符串:字符串]]你可以放心地首先通过做这样的事情,你让你的函数调用之前解开它:

guard let myData = data as? [[String:String]] else { 
    print("couldn't cast data as [[String:String]]") 
    return 
} 

makeDataSource(data:myData) 

如果上面的guard语句失败,那么我会检查位于数据数组/字典中的对象类型。你可以把它转换成多种东西。例如:

as? [[String:String]] 
as? [[Int:String]] 
as? [[String:AnyObject]] 
etc....... 

你只需要匹配那里的内容,你的代码应该运行平稳。