分组和计数NSArray对象

时间:2013-05-21 13:07:22

标签: ios nsarray nspredicate

我有一个NSArray对象。每个对象都具有以下属性/属性Name,Id,TYPENameid是依赖的。即如果Id为12345且Id为AAAA,那么对于Id 12345 Name的所有对象始终为AAAA。

我所拥有的是特定的TYPE说BedType。现在我只想考虑BedType的对象,按Id对它们进行分组,并计算每组的对象数量。我想要的输出是Name和每组的计数。

1 个答案:

答案 0 :(得分:0)

您可以创建一个字典,其中键将是名称,值将是对象的计数。然后你可以迭代你的数组和

NSMutableDictionary *countsByName = [@{} mutableCopy];

for(Object *object in myObjectArray){

    NSNumber *count = countsByName[object.name]
    if(count)
        countsByName[object.name] = @([count intValue] + 1);
    else countsByName[object.name] = @1;
}

您需要确保只考虑TYPE为BedType的对象。