如果我尝试使用objectAtIndex:x访问nsmutableArray,并且如果我在此索引中没有对象,我的应用程序总是会崩溃。
所以我的问题是:如果这个索引有什么东西我可以检查,而不会崩溃应用程序?
我希望你理解我的问题。 谢谢,Alex
答案 0 :(得分:5)
检查您的索引是否在数组的边界范围内:
if (index >=0 && index < [myArray count])
...
答案 1 :(得分:1)
NSArray有一个名为“count”的方法。 在可变数组上调用 count ,它会告诉你数组中元素的数量。
答案 2 :(得分:1)
如果你在数组的范围内,你将始终拥有一个介于0和[array count]
之间的特定索引的对象,因为数组中不能有nil
个值的空白。
答案 3 :(得分:1)
你有两个选择:使用count
方法确保你在数组的范围内,或者当你尝试使用{{1}时捕获异常}用计数检查范围会很多比捕获异常更低的开销。
如果您不知道 - NSArray中没有“漏洞” - 从索引0到数组末尾的对象([objectAtIndex:
)都可以访问。
答案 4 :(得分:0)
试试这个
for(i=0; i< [myMutableArrayObject count]; i++) {
NSLog(@"%@",[[myMutableArrayObject objectAtIndex: i] myMethodDefined]);
}
在这里,我们使用一个名为 count 的预定义方法,它返回MutableArray对象中的对象数量 然后是另一个方法 objectAtIndex ,它以0到(count - 1)的间隔迭代对象。
此致 萨米特