为什么我的来自 json 的 NSDictionary 排序如此?
Why my NSDictionary that was from json sorted like this?
当我接听电话时,我试图在我的 NSDictionary
中获取与 json 相同的排序数据。我不知道为什么我会得到这样的数据?如果有办法,怎么做呢?请帮忙!!
NSDictionary 总是没有顺序。如果您枚举或打印它,它基本上会以随机顺序出现。如果你想订购它,你必须获取键和值并自己对它们进行排序,或者使用 NSDictionary 以外的东西。
字典未排序。您必须创建一个数组以包含所有字典元素才能对其进行排序。在您的情况下,要获取按升序排序的键数组
let sortedKeys = (dictionary.allKeys as NSArray).sortedArrayUsingDescriptors(
[NSSortDescriptor(key:"self" ascending:true)])
当然,如果你使用真正的Swift字典,你可以写得更优雅:
let sortedKeys = Array(dictionary.keys).sorted(<)
当我接听电话时,我试图在我的 NSDictionary
中获取与 json 相同的排序数据。我不知道为什么我会得到这样的数据?如果有办法,怎么做呢?请帮忙!!
NSDictionary 总是没有顺序。如果您枚举或打印它,它基本上会以随机顺序出现。如果你想订购它,你必须获取键和值并自己对它们进行排序,或者使用 NSDictionary 以外的东西。
字典未排序。您必须创建一个数组以包含所有字典元素才能对其进行排序。在您的情况下,要获取按升序排序的键数组
let sortedKeys = (dictionary.allKeys as NSArray).sortedArrayUsingDescriptors(
[NSSortDescriptor(key:"self" ascending:true)])
当然,如果你使用真正的Swift字典,你可以写得更优雅:
let sortedKeys = Array(dictionary.keys).sorted(<)