Objective-C:基于字典条目对NSDictionary的键进行排序

Jos*_*hDG 13 xcode cocoa-touch objective-c

好的,所以我知道字典无法排序.但是,比方说我NSMutableArray *keys = [someDictionary allKeys];现在,我想根据字典中的相应值(按字母顺序)对这些键进行排序.因此,如果字典包含key=someString,那么我想keys根据它们对应的字符串进行排序.我认为它的一些应用,sortUsingComparator但在这一点上它有点超出我的范围.

mas*_*sk8 21

NSArray *keys = [someDictionary allKeys];
NSArray *sortedKeys = [keys sortedArrayUsingComparator:^NSComparisonResult(id a, id b) {
    NSString *first = [someDictionary objectForKey:a];
    NSString *second = [someDictionary objectForKey:b];
    return [first compare:second];
}];
Run Code Online (Sandbox Code Playgroud)