数据筛选

第一种:利用NSDictionary的AllKeys(AllValues)方法

NSArray*dataArray=@[@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-03",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-04",@"2014-04-06",@"2014-04-08",@"2014-04-05",@"2014-04-07",@"2014-04-09",];

NSMutableDictionary*dic= [[NSMutableDictionary alloc]initWithCapacity:0];for(NSString*strin dataArray)

{

[dic setValue:str forKey:str];

}

NSLog(@"%@",[dic allKeys]);


打印结果:

(

"2014-04-09",

"2014-04-02",

"2014-04-08",

"2014-04-01",

"2014-04-07",

"2014-04-06",

"2014-04-05",

"2014-04-04",

"2014-04-03"

)


第二种方法:利用NSSet的AllObjects方法

实例代码:

NSArray*dataArray=@[@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-03",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-04",@"2014-04-06",@"2014-04-08",@"2014-04-05",@"2014-04-07",@"2014-04-09",];    NSSet*set= [NSSet setWithArray:dataArray];    NSLog(@"%@",[set allObjects]);

打印结果:

(

"2014-04-01",

"2014-04-02",

"2014-04-03",

"2014-04-04",

"2014-04-06",

"2014-04-08",

"2014-04-05",

"2014-04-07",

"2014-04-09"

)



第三种方法,利用数组的containsObject来去除

代码如下:

NSArray*dataArray=@[@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-03",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-04",@"2014-04-06",@"2014-04-08",@"2014-04-05",@"2014-04-07",@"2014-04-09",];      NSMutableArray*listAry= [[NSMutableArray alloc]init];for(NSString*strin dataArray) {if(![listAry containsObject:str]) {              [listAry addObject:str];          }      }      NSLog(@"%@",listAry);

打印结果:

(

"2014-04-01",

"2014-04-02",

"2014-04-03",

"2014-04-04",

"2014-04-06",

"2014-04-08",

"2014-04-05",

"2014-04-07",

"2014-04-09"

)


第四种方法:利用keyValue的方式(自己不是太明白)

NSArray*dataArray=@[@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-03",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-01",@"2014-04-02",@"2014-04-03",@"2014-04-04",@"2014-04-06",@"2014-04-08",@"2014-04-05",@"2014-04-07",@"2014-04-09",];  dataArray = [dataArray valueForKeyPath:@"@distinctUnionOfObjects.self"];  NSLog(@"%@",dataArray);

打印结果如下:

(

"2014-04-01",

"2014-04-02",

"2014-04-03",

"2014-04-04",

"2014-04-06",

"2014-04-08",

"2014-04-05",

"2014-04-07",

"2014-04-09"

)

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

推荐阅读更多精彩内容