iOS --一个简单的方法实现对数组中相同属性值对象进行分组

2019-07-19  本文已影响0人  Theendisthebegi

相信大家或多或少都会遇到这类问题,即: ios 数组中相同属性值对象进行分组 - 简书

一个数组中很多对象,将对象某一属性值相等的分别放到一个数组。

比如有一个数组包含所有的学生student,但各个学生可能拥有共同的老师teacher,现在将老师相同的学生放在一起,并且不打乱学生之间的顺序(所以不要用字典),实现起来可能有很多种方法,那么如何实现这个需求?

话不多说,直接上代码
        NSMutableArray * dataArray = [NSMutableArray array];
        
        while (studentArray.count) {

            NSArray * tmpArray = [studentArray filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"teacher = %@",studentArray.firstObject.teacher]];
            
            [dataArray addObject:tmpArray];
            
            [studentArray removeObjectsInArray:tmpArray];
        }

这样重新生成的dataArray里就会有多个以老师teacher划分的数组了,每个数组里有着属于该老师下的学生

上一篇 下一篇

猜你喜欢

热点阅读