根据NSArray元素排序NSDictionary键



我有NSDictionary填充了许多对象。我已经按照期望的模式对键进行了排序,现在我只有一个新的NSArray中的键。如何应用的变化,使数组中的元素的顺序反映在字典中?
对于例NSArray -> ["D" , "B" , "A" , "C"],这个顺序我想应用于字典中的键。

NSDictionary -> {{"A" : <something>} , {"B" : <something>} , {"C" : <something>} , {"D" : <something>}}

你没有。遍历数组中的键,然后从字典中取出数据。

for (NSString *key in sortedKeys) {
    id value = dictionary[key];
    // do something...
}

如果你需要排序,你可以考虑使用NSOrderedSet或滚动你自己的数据结构来做到这一点。例如,我创建了使用NSIndexSet和NSDictionary的数据结构,以提供键/值存储和更快的排序枚举。

最新更新