IOS 数组分组 Grouped NSArray

  NSMutableSet *set=[NSMutableSet set];
    [_list enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
        [set addObject:obj[@"MeasureType"]];//利用set不重复的特性,获得有多少组,根据数组中的MeasureType字段
    }];
    [set enumerateObjectsUsingBlock:^(id obj, BOOL *stop) {//遍历set数组
        MyLog(@"obj=%@",obj);
         NSPredicate *predicate = [NSPredicate predicateWithFormat:@"MeasureType = %@", obj];//建立谓词筛选器
         NSArray *group = [_list filteredArrayUsingPredicate:predicate];//用数组的过滤方法获得新的数组,在添加的最终的数组_slices中
[_slices addObject:group];
}];

 解析:查询数据库获得数据_list数组NSArray,_list中的每一行为数据库中的一行数据,有多个字段.数据库

_list数组类型为NSArray 而不是NSMutableArray数组

_slices为最终分组后的数组.orm

MeasureType为_list数组中每一行中的一个字段名.blog

特此记录,方便之后查找it

相关文章
相关标签/搜索