iOS开发过程中总是会遇到数组越界的情况,即使你万般小心还是会打湿鞋子,那么如何杜绝这种情况呢,其中一个思路就是创建一个NSArray的分类NSArray+prevent,采用新的取值方法:
//头文件
@interface NSArray (prevent)
- (id)objectOfIndex:(NSUInteger)index;
@end
//实现
@implementation NSArray (prevent)
- (id)objectOfIndex:(NSUInteger)index{
if (index >= [self count]) {
return nil;
}
id value = [self objectAtIndex:index];
if (value == [NSNull null]) {
return nil;
}
return value;
}
@end
通过一段代码测试看看结果
NSArray *arr = @[@"第0条",@"第1条",@"第2条",@"第3条",@"第4条"];
for (int i = 0; i < 7; i++) {
NSString *str = [arr objectOfInde