计算每个值在数组中重复的次数

iPh*_*lly 0 iphone ios6

如何检查数组中重复的时间项数.我有一个包含重复项的数组.下面是数组.

"Family:0",
"Family:0",
"Family:0",
"Gold:3",
"Gold:3"
Run Code Online (Sandbox Code Playgroud)

所以,我希望各个项目的响应值为3和2.我怎样才能做到这一点.希望我明白我的观点.如果有什么不清楚请问.

以下是我试过的代码.

int occurrences = 0;
int i=0;
for(NSString *string in arrTotRows){
    occurrences += ([string isEqualToString:[arrTotRows objectAtIndex:indexPath.section]]); //certain object is @"Apple"
    i++;
}
Run Code Online (Sandbox Code Playgroud)

Dan*_*tín 7

NSCountedSet *countedSet = [[NSCountedSet alloc] initWithArray:yourArray];
Run Code Online (Sandbox Code Playgroud)

获取发生次数:

int objectCount = [countedSet countForObject:yourQuery];
Run Code Online (Sandbox Code Playgroud)

(yourQuery你想要获得多重性的对象在哪里).在您的情况下,例如:

int objectCount = [countedSet countForObject:@"Family:0"];
Run Code Online (Sandbox Code Playgroud)

并且objectCount应该等于3,因为"族:0"在multiset中是三次.