0
我有3个对象的数组。这些对象属于字典类型。每个字典都有不同的密钥。我想按字母顺序对这个数组进行排序。按字母顺序对字典进行排序
我的数组结构如下
MyListArray:({Return=something;},{Departure=something;},{Both=something;});
我如何按字母顺序排序呢?
我有3个对象的数组。这些对象属于字典类型。每个字典都有不同的密钥。我想按字母顺序对这个数组进行排序。按字母顺序对字典进行排序
我的数组结构如下
MyListArray:({Return=something;},{Departure=something;},{Both=something;});
我如何按字母顺序排序呢?
使用sortedArrayUsingComparator:
并比较比较器中的键。关键是字典allKeys
中的第一个关键字。
NSArray *sortedArray = [myListArray sortedArrayUsingComparator:^(NSDictionary* _Nonnull obj1, NSDictionary* _Nonnull obj2) {
if (obj1.count == 0) {
if (obj2.count == 0)
return NSOrderedSame;
else
return NSOrderedAscending;
}
if (obj2.count == 0)
return NSOrderedDescending;
NSString *key1 = obj1.allKeys[0];
NSString *key2 = obj2.allKeys[0];
return [key1 compare:key2];
}];
你要像输出: - 'MyListArray:({=两个东西;},{ 出发=东西;},{回报=东西;});'??? –
是的。那是我的预期输出 –
[Objective-C:基于字典条目对NSDictionary的键进行排序]的可能重复(https://stackoverflow.com/questions/11554780/objective-c-sort-keys-of-nsdictionary-基于字典条目) –