iphone - 通过检查数组计数来防止数组索引崩溃,是否存在性能问题?

标签 iphone ios crash

为了避免崩溃问题,如果我像下面的代码一样在访问每个索引之前检查数组计数,那么是否存在性能问题?对于大型应用来说,这是好的做法还是坏的做法?

我的代码是:

-(BOOL)checkIndexAvailability:(NSArray *)array_ withIndex:(int)index_
{
    if ((array_.count-1)>=index_) {
        return TRUE;
    }
    return FALSE;
}

当我访问任何数组时,我会这样调用:

if ([self checkIndexAvailability:regDataArray withIndex:2]) {
    lastName = [regDataArray objectAtIndex:2];
}

最佳答案

我建议只做一个快速的内联检查,让它变得更好一点。像这样:

lastName = (regDataArray.count - 1 > 2) ? [regDataArray objectAtIndex:2] : nil;

虽然你不会注意到任何速度与你或我的方式不同。

关于iphone - 通过检查数组计数来防止数组索引崩溃,是否存在性能问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15926510/

相关文章:

iphone - UICollectionReusableView 使用动画更改标题高度

iPhone:支持的加密/解密算法

ios - UICollectionView 没有可见接口(interface)声明选择器 indexPathForSelectedRow

ios - fatal error : unexpectedly found nil while unwrapping an Optional value (lldb)

ios - PresentViewController 在 iOS 4.3 上崩溃但在 iOS 5 上没有

crash - Maya 2016 退出时崩溃

iphone - 有人可以向我解释 iPhone 的数据保护和加密吗?

iphone - MKReverseGeocoder 导致 EXC_BAD_ACCESS?

ios - 将字符串转换为日期时,日期存在差异

Android - 应用程序在 Android 手机上崩溃,但在 Android 模拟器 (Android Studio) 上不会崩溃