swift5.x NSArray NSMutableArray

2019-11-27  本文已影响0人  Bruce_XHG

我们写oc的时候经常用到对数组越界的保护分类

@implementation NSArray (ALadd)

- (id)objectAtIndexCheck:(NSUInteger)index
{
    if (index >= self.count) {
        return nil;
    }
    
    id value = [self objectAtIndex:index];
    if (value == [NSNull null]) {
        return nil;
    }
    
    return value;
}

OC的数组越界保护使用:[self.dataNameArry objectAtIndexCheck:index];

swift 对数组的越界保护(NSMutableArray 的拓展就不用写了,可以直接调用NSArray的拓展)

extension NSArray {
    
    subscript (safe index: Int) -> Element? {
        return (0..<count).contains(index) ? self[index] : nil
  }
    
}

swift的数组越界保护使用:self.heightArr[safe:indexPath.row]

上一篇 下一篇

猜你喜欢

热点阅读