过滤掉数组中相同的元素

摘要:过滤掉数组中相同的元素

正文:利用NSMutableSet过滤掉数组中相同的元素

NSMutableArray+FilterElement.h

1
2
3
4
5
6
7
8
@interface NSMutableArray (FilterElement)
/**
* 过滤掉相同的元素
*
* @return 返回一个数组
*/
- (NSMutableArray*)filterTheSameElement;
@end

NSMutableArray+FilterElement.m

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
@implementation NSMutableArray (FilterElement)
/**
* 过滤掉相同的元素
*
* @return 返回一个数组
*/
- (NSMutableArray*)filterTheSameElement
{
NSMutableSet *set = [NSMutableSet set];
for (NSObject *obj in self) {
[set addObject:obj];
}
[self removeAllObjects];
for (NSObject *obj in set) {
[self addObject:obj];
}
return self;
}

@end