3 回答
TA贡献2065条经验 获得超13个赞
您无法对字典进行排序,但是可以对它的键进行排序并按以下步骤循环遍历:
let myDictionary = ["name1" : "Loy", "name2" : "Roy", "name3" : "Tim", "name4" : "Steve"] // ["name1": "Loy", "name2": "Roy", "name3": "Tim", "name4": "Steve"]
let sorted = myDictionary.sorted {$0.key < $1.key} // or {$0.value < $1.value} to sort using the dictionary values
print(sorted) // "[(key: "name1", value: "Loy"), (key: "name2", value: "Roy"), (key: "name3", value: "Tim"), (key: "name4", value: "Steve")]\n"
for element in sorted {
print("Key = \(element.key) Value = \(element.value)" )
}
TA贡献1845条经验 获得超8个赞
无论是NSDictionary也Swift::Dictionary令它的存储。区别在于某些NSDictionary对象在打印时会对其输出进行排序,而Swift::Dictionary不会。
从以下文档中-[NSDictionary description]:
如果字典中的每个键都是一个NSString对象,则按键升序列出条目,否则未定义条目的列出顺序。此属性旨在产生可读输出,用于调试目的,而不是用于序列化数据。
- 3 回答
- 0 关注
- 1199 浏览
添加回答
举报