我有一个包含子 NSDictionaries 的 NSDictionary,我想知道是否可以通过子词典的“name”键的值按字母顺序对主词典进行排序。
NSDictionary *student1 = @{@"first_name" : @"Scott", @"last_name" : @"Smith"};
NSDictionary *student2 = @{@"first_name" : @"John", @"last_name" : @"Donalson"};
NSDictionary *student3 = @{@"first_name" : @"Mary", @"last_name" : @"Patricia"};
NSDictionary *student4 = @{@"first_name" : @"Zack", @"last_name" : @"Elliot"};
NSDictionary *students = @{"001": student1, "002": student2, "003": student3, "004": student4};
我希望能够创建一个数组或可变数组,它只保存键,但根据子字典中某些键的值进行排序。像这样:
姓氏数组
["002", "004", "003", "001"];
名字数组
["002", "003", "001", "004"];
最佳答案
查看 NSDictionary 方法keysSortedByValueUsingComparator:
您提供一个比较器 block ,用于处理值(您的学生词典)并返回一个键数组。
关于ios - 从多维 NSDictionary 的子字典值创建排序数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18472947/