3 回答

TA貢獻(xiàn)2065條經(jīng)驗(yàn) 獲得超14個贊
您無法對字典進(jìn)行排序,但是可以對它的鍵進(jìn)行排序并按以下步驟循環(huán)遍歷:
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貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個贊
無論是NSDictionary也Swift::Dictionary令它的存儲。區(qū)別在于某些NSDictionary對象在打印時會對其輸出進(jìn)行排序,而Swift::Dictionary不會。
從以下文檔中-[NSDictionary description]:
如果字典中的每個鍵都是一個NSString對象,則按鍵升序列出條目,否則未定義條目的列出順序。此屬性旨在產(chǎn)生可讀輸出,用于調(diào)試目的,而不是用于序列化數(shù)據(jù)。
- 3 回答
- 0 關(guān)注
- 1243 瀏覽
添加回答
舉報