iOS - 目标C,通过键名对NSDictionary的NSArray进行排序
问题描述:
如何根据NSDictionary的键名对NSArray的字典进行排序。iOS - 目标C,通过键名对NSDictionary的NSArray进行排序
可以说,NSArray中的JSON格式
[
{
"keyName" : "C",
"value" : "0.1"
},
{
"keyName" : "A",
"value" : "1.1"
},
{
"keyName" : "B",
"value" : "2.1"
}
]
答
排序中的iOS字典的数组是很容易简单NSSortDescriptor做演练。
[yourArray sortUsingDescriptors:[NSArray arrayWithObjects:[NSSortDescriptor sortDescriptorWithKey:@"keyName" ascending:YES], nil]];
答
您可以使用sortedArrayUsingComparator
NSArray *sortedArray;
sortedArray = [unsortedArray sortedArrayUsingComparator:^NSComparisonResult(id a, id b) {
Dictionary *dictoinary1 = (Dictionary*)a;
Dictionary * dictoinary2 = (Dictionary*)b;
return [[dictoinary1 objectForKey:@"keyName"] caseInsensitiveCompare:[dictoinary2 objectForKey:@"keyName"]];
}];