這幾天正在整理面試題,順便把之前學的東西給總結一下,數組去重,我猜面試應該考的概率仍是蠻高的,因此下面就讓博主給講講iOS數組去重的幾種方法。程序員
NSArray *array = @[@"小玉",@"小小魚",@"小玉"]; //數組去重方法---方法1 //創建一個新的的可變數組,數組長度爲0 NSMutableArray *newArray = [NSMutableArray array]; //遍歷array,而後判斷新數組中是否包含該元素,若是沒有,則添加。 for (NSString *string in array) { if (![newArray containsObject:string]) { [newArray addObject:string]; } } //輸出新數組中的元素 for (NSString *string in newArray) { NSLog(@"%@",string); }
NSArray *array = @[@"小玉",@"小小魚",@"小玉"];
//字符串去重方法二 NSMutableDictionary *dict = [NSMutableDictionary dictionary]; //根據字典的key值是惟一的,來寫入數組 for (NSNumber *number in array) { //把number拼接成字符串 [dict setValue:number forKey:[NSString stringWithFormat:@"%@",number]]; } NSLog(@"%@",[dict allValues]);
NSArray *array = @[@"小玉",@"小小魚",@"小玉"]; //第三種去重方法NSSet NSSet *set = [[NSSet alloc]initWithArray:array]; NSLog(@"%@",[set allObjects]);
NSArray *array = @[@"小玉",@"小小魚",@"小玉"]; //數組有序排列 NSOrderedSet *orderSet = [NSOrderedSet orderedSetWithArray:array]; NSLog(@"%@",orderSet.array);