NSArray *originalArray = @[@"apple", @"banana", @"apple", @"orange", @"banana"];
NSSet *uniqueSet = [NSSet setWithArray:originalArray];
NSArray *uniqueArray = [uniqueSet allObjects];
NSLog(@"简单 无需 去重后的数组: %@", uniqueArray);
NSArray *originalArray = @[@"apple", @"banana", @"apple", @"orange", @"banana"];
NSOrderedSet *orderedSet = [NSOrderedSet orderedSetWithArray:originalArray];
NSArray *uniqueArray = [orderedSet array];
NSLog(@"保持有序 去重后的数组: %@", uniqueArray);
NSArray *originalArray = @[@"apple", @"banana", @"apple", @"orange", @"banana"];
NSMutableArray *uniqueArray = [NSMutableArray array];
for (id element in originalArray) {
if (![uniqueArray containsObject:element]) {
[uniqueArray addObject:element];
}
}
NSLog(@"灵活控制 性能较差 去重后的数组: %@", uniqueArray);
NSArray *originalArray = @[@"apple", @"banana", @"apple", @"orange", @"banana"];
NSDictionary *dictionary = [NSDictionary dictionaryWithObjects:originalArray forKeys:originalArray];
NSArray *uniqueArray = [dictionary allKeys];
NSLog(@"简单高效 无序 去重后的数组: %@", uniqueArray);
NSArray *originalArray = @[@"apple", @"banana", @"apple", @"orange", @"banana"];
NSArray *uniqueArray = [originalArray valueForKeyPath:@"@distinctUnionOfObjects.self"];
NSLog(@"简单高效 仅适用于简单数据类型去重后的数组: %@", uniqueArray);