Swift Dictionary多键值对 – 迭代

前端之家收集整理的这篇文章主要介绍了Swift Dictionary多键值对 – 迭代前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_403_4@
Swift中,我想创建一个字典数组(具有多个键值对),然后迭代每个元素

@H_301_8@

以下是可能字典的预期输出.不知道如何声明和初始化它(有点类似于Ruby中的哈希数组)@H_301_8@

@H_301_8@

dictionary = [{id: 1,name: "Apple",category: "Fruit"},{id: 2,name: "Bee",category: "Insect"}]

我知道如何使用一个键值对创建一个字典数组.
例如:@H_301_8@

@H_301_8@

var airports: [String: String] = ["YYZ": "Toronto Pearson","DUB": "Dublin"]
@H_403_4@

解决方法

声明一个字典数组,使用这个:

@H_301_8@

@H_301_8@

var arrayOfDictionary: [[String : AnyObject]]  = [["id" :1,"name": "Apple","category" : "Fruit"],["id" :2,"name": "Microsoft","category" : "Juice"]]

我在你的字典中看到你将数字与字符串混合,所以最好使用AnyObject而不是String来表示字典中的数据类型.
如果在此代码之后,您不必修改此数组的内容,则将其声明为’let’,否则,使用’var’@H_301_8@

更新:在循环内初始化:@H_301_8@

@H_301_8@

//create empty array
var emptyArrayOfDictionary = [[String : AnyObject]]()
for x in 2...3 {  //... mean the loop includes last value => x = 2,3
    //add new dictionary for each loop
    emptyArrayOfDictionary.append(["number" : x,"square" : x*x ])
}
//your new array must contain: [["number": 2,"square": 4],["number": 3,"square": 9]]
@H_403_4@ @H_403_4@

猜你在找的Swift相关文章