我有许多NSDictionary的NSMutableArray包含像“Title”这样的键。在某些情况下,有重复的字典具有相同的“标题”,但其他键的差异。 如何删除具有相同“标题”键并且只在数组中保留一个字典的字典?
由于
答案 0 :(得分:6)
使用关键路径“title”上的NSSortDescriptor
对数组进行排序。接下来,遍历数组并构建一个新数组:
NSString *lastTitle = nil;
NSMutableArray *result = [NSMutableArray array];
for (NSDictionary *d in array) {
NSString *testTitle = [d objectForKey:@"title"];
if (![testTitle isEqualToString:lastTitle]) {
[result addObject:d];
lastTitle = testTitle;
}
}
现在result
包含已过滤的列表。
首先对此算法进行排序array
非常重要。