NSMutableArray,检查哪个Value最丰富?

时间:2014-04-01 07:51:15

标签: ios objective-c nsmutablearray

如何检查NSMutableArray中哪个值最常见?

Array = "0,2,3,2,2,4

值=" 2"。

1 个答案:

答案 0 :(得分:6)

看看NSCountedSet这将有助于解决您的问题。

NSCountedSet *countedSet = [[NSCountedSet alloc] initWithArray:youArray];

NSInteger maxCount = 0;
id maxObject = nil;

for (id object in countedSet) {
    if ([countedSet object] > maxCount) {
        maxCount = [countedSet countForObject:object];
        maxObject = object;
    }
}

return maxObject;

这听起来像家庭作业。

修改

如果将它们存储为字符串而不是数字,则将NSNumber替换为NSString,其他所有内容都相同。

修改

实际上,我刚才意识到它并不关心它是什么类型的对象......

最新的编辑将适用于任何对象。