Iphone NSMutableArray:count是方法还是属性?

Iphone NSMutableArray:count是方法还是属性?,iphone,objective-c,count,nsmutablearray,Iphone,Objective C,Count,Nsmutablearray,我想确认我是否在UITable的最后一个单元格中。 我是否应该在控制器中使用NSInteger属性并存储填充表的数据计数值(它是一个NSMutableArray) 我问这个问题是因为我不知道count是迭代数组中的所有对象进行计数,还是只得到一个count属性的值 什么会更好 存储值:myCount=[myArray count] 直接使用:[myArray count] 存储numberOfRows:myCount=numberOfRowsInSection:[0] 直接使用numberOfR

我想确认我是否在UITable的最后一个单元格中。 我是否应该在控制器中使用NSInteger属性并存储填充表的数据计数值(它是一个NSMutableArray)

我问这个问题是因为我不知道count是迭代数组中的所有对象进行计数,还是只得到一个count属性的值

什么会更好

存储值:myCount=[myArray count]
直接使用:[myArray count]
存储numberOfRows:myCount=numberOfRowsInSection:[0]

直接使用numberOfRows:numberOfRowsInSection:[IndexXPath 0]

因为表视图的状态可以随时更改,这取决于iPhone操作系统在任何给定时间所做的操作,因此您几乎总是希望从模型中提取状态数据(在本例中是从数组中)。

直接使用该方法。它几乎可以肯定是足够有效的。如果您有严重的性能问题,请使用shark和instruments找出原因。如果你发现你的大部分时间都花在了通话统计上,那就找一个方法来优化它,就像你在这里建议的那样。但是,不要像这样过早地进行优化——你只是在浪费时间,甚至连想都没想。

这里我们看到一个人指责苹果电脑的阵列实现太草率。好吧,我想这可能会影响性能。自从我开始用C编程以来,我总是在脑海中处理这个问题。即使在C中,调用函数对性能的影响也很小(比Objective-C小得多)。当您调整性能时,最好尽可能地编写代码,然后专门测试真正的性能瓶颈在哪里(同样,即使是在C语言中)。现代编译器和计算机体系结构在优化方面比15年前要好得多,因此让他们专注于第一轮优化,而您专注于第一轮问题解决,然后调整:)