IOS NSArray 去重

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);

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容