当前位置:  开发笔记 > 编程语言 > 正文

NSMutableArray计数始终返回零

如何解决《NSMutableArray计数始终返回零》经验,为你挑选了1个好方法。

我确定我做的很傻,但这让我发疯了.

我正在尝试遍历数据库结果,从这些结果创建对象,并将对象添加到NSMutableArray.我已通过NSLog调用验证数据是从数据库中正确读取并复制到对象,但NSMutableArray的计数始终返回0.

这是代码的本质:

while ([rs next]) {

    Kana *htemp = [Kana alloc];

    htemp.content = [rs stringForColumn:@"hiragana"];
    [hiragana addObject:htemp];

}
NSLog(@"Hiragana contains %d objects", [hiragana count]);

假名源自NSObject,平假名是NSMutableArray的一个实例.

我确定这是一个新手的错误,我希望有人可以帮我.TIA!:)



1> Matt Ball..:

我的猜测,从您发布的代码判断,您可能没有正确分配您的阵列.创建对象时,还需要初始化它们.因此,这个:

Kana *htemp = [Kana alloc];

应该:

Kata *temp = [[Kana alloc] init];

所有对象都需要以这种方式初始化.因此,如果我是正确的并且你没有初始化你的数组,那么你的创建需要从这个:

NSMutableArray *hiragana = [NSMutableArray alloc];

对此:

NSMutableArray *hiragana = [[NSMutableArray alloc] init];

出于优化原因,如果您知道可能包含多少个对象,则还应该指定初始容量:

[[NSMutableArray alloc] initWithCapacity:someNumber];

推荐阅读
ifx0448363
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有