首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSDictionary计数

NSDictionary计数
EN

Stack Overflow用户
提问于 2012-07-31 21:35:20
回答 4查看 21.7K关注 0票数 8

我如何计算“账单”里面有多少个斜度?

代码语言:javascript
复制
bills =     (
            {
        id = 1;
        name = "Cursus Nibh Venenatis";
        value = "875.24";
    },
            {
        id = 2;
        name = "Elit Fusce";
        value = "254.02";
    }
);

我是这样数的:

代码语言:javascript
复制
NSUInteger keyCount = [resultsDictionary count];
NSLog(@"%i", keyCount);

谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-07-31 21:47:14

一个简单的解决方案会假设OP想要计算bills,它恰好是一个数组,所以解决方案应该是

代码语言:javascript
复制
NSLog(@"Count: %i", [[resultsDictionary objectForKey: @"bills"] count]);

但是,如果您有一个包含多个要计数的对象的字典,那么枚举所有对象是唯一的方法。

票数 6
EN

Stack Overflow用户

发布于 2012-07-31 21:44:33

代码语言:javascript
复制
NSUInteger keyCount = [resultsDictionary count];
NSLog(@"%i", keyCount); 

是真的,但你也可以使用[resultsDictionary allKeys];,它将返回一个键数组,你可以直接得到它的计数。如需更多信息,请访问docs :v

票数 4
EN

Stack Overflow用户

发布于 2012-07-31 21:43:22

NSUInteger count = [bills count]; //字典中的顶级条目

如果你想得到所有的项目,那么你需要使用块枚举,并递归地询问每个字典的计数是什么,然后求和。你必须编写代码-没有系统提供的方法来做到这一点。查看块枚举(即枚举....)在类引用中。

您还可以询问每一项是什么-如果是"isKindOf:“一个NSDictionary或NSArray,则获取计数,否则将其视为1。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11741360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档