例如:
{
applyDate = "2016-08-07 14:49:17.051";
approvalDate = "<null>";
approvalUser = "<null>";
deviceCode = "<null>";
deviceId = 2097ee7175f94c49b2692a92b8627c30;
deviceName = "\U65e0\U6e90\U9501-001";
deviceType = 2;
noSourceCode = "<null>";
status = 0;
}
若直接给cell.deviceCodeLb赋值:
cell.deviceCodeLb.text =[_LockSArray[indexPath.row] objectForKey:@"deviceCode"];
则因为deviceCode值为空,所以会出现-[NSNull length]: unrecognized selector sent to instance错误,为防止偶然错误,使用下边的方式赋值则是极好的
cell.deviceCodeLb.text = [[_LockSArray[indexPath.row]objectForKey:@"deviceCode"]class] == [NSNullclass]?@"写入字段值为空时你的替代str":[_LockSArray[indexPath.row]objectForKey:@"deviceCode"];
cell.deviceNameLb.text = [[_LockSArray[indexPath.row]objectForKey:@"deviceName"]class] == [NSNullclass]?@"暂无资料":[_LockSArray[indexPath.row]objectForKey:@"deviceName"];
或者实现扩展方法,直接替换空值为@“”
- (NSDictionary *)deleteAllNullValue{
NSMutableDictionary *mutableDic = [[NSMutableDictionary alloc] init];
for (NSString *keyStr in self.allKeys) {
if ([[self objectForKey:keyStr] isEqual:[NSNull null]]) {
[mutableDic setObject:@"" forKey:keyStr];
}
else{
[mutableDic setObject:[self objectForKey:keyStr] forKey:keyStr];
}
}
return mutableDic;
}