Objective-C字典键按降序排序

时间:2015-04-13 14:24:56

标签: objective-c sorting nsdictionary

我有一个无序的字典:

@{ @"20101R" : @"value1", 
   @"20102R" : @"value2", 
   @"20131R" : @"value3", 
   @"20111R" : @"value4", 
   @"20122R" : @"value5" }

每个键代表 1R 2R

对于UITableView,我希望提供'键'作为标题和'值'像这样的副标题:

来自最新键值 - > 最早键值

title : 20131R
subtitle : value3

title : 20122R
subtitle : value5

title : 20111R
subtitle : value4

title : 20102R
subtitle : value2

title : 20101R
subtitle : value1

你能帮我按降序排序这个类似数字的字符串吗? 最简单的方法是什么? 提前谢谢。

1 个答案:

答案 0 :(得分:2)

拉出键
NSArray *keysArray = [dictionary allKeys];

然后对数组进行排序:

NSArray *sortedArray = [keysArray sortedArrayUsingComparator:^NSComparisonResult(NSString*  _Nonnull obj1, NSString*  _Nonnull obj2) {
    return obj1 < obj2;
}];