iOS对字典中相应的value进行操作
无论是数组里面的字典 还是 字典里面的字典
+(NSDictionary *)nullDic:(NSDictionary *)myDic
{
NSArray *keyArr = [myDic allKeys];
NSMutableDictionary *resDic = [[NSMutableDictionary alloc]init];
for (int i = 0; i < keyArr.count; i ++)
{
id obj = [myDic objectForKey:keyArr[i]];
obj = [self changeType:obj];
//在这里加入判断 你想要修改的key 然后value 进行修改
if ([keyArr[i] isEqualToString:@"StartTime"]) {
if ([obj isKindOfClass:[NSString class]]) {
obj = [(NSString *)obj stringByReplacingOccurrencesOfString:@"T" withString:@" "];
}
} else if ([keyArr[i] isEqualToString:@"EndTime"]) {
if ([obj isKindOfClass:[NSString class]]) {
obj = [(NSString *)obj stringByReplacingOccurrencesOfString:@"T" withString:@" "];
}
}
[resDic setObject:obj forKey:keyArr[i]];
}
return resDic;
}
//将NSDictionary中的Null类型的项目转化成@""
+(NSArray *)nullArr:(NSArray *)myArr
{
NSMutableArray *resArr = [[NSMutableArray alloc] init];
for (int i = 0; i < myArr.count; i ++)
{
id obj = myArr[i];
obj = [self changeType:obj];
[resArr addObject:obj];
}
return resArr;
}
//将NSString类型的原路返回
+(NSString *)stringToString:(NSString *)string
{
return string;
}
//将Null类型的项目转化成@""
+(NSString *)nullToString
{
return @"";
}
#pragma mark - 公有方法
//类型识别:将所有的NSNull类型转化成@""
+(id)changeType:(id)myObj
{
if ([myObj isKindOfClass:[NSDictionary class]])
{
return [self nullDic:myObj];
}
else if([myObj isKindOfClass:[NSArray class]])
{
return [self nullArr:myObj];
}
else if([myObj isKindOfClass:[NSString class]])
{
return [self stringToString:myObj];
}
else if([myObj isKindOfClass:[NSNull class]])
{
return [self nullToString];
}
else
{
return myObj;
}
}
示例
调用前
EndDate = “12\U670819\U65e5”;
List = (
{
Date = “12\U670813\U65e5”;
List = (
{
EndTime = “2019-12-13T11:06:46”;
Id = e92660f91eb95b05848fb239ca2bfbca;
Mileage = 2;
StartTime = “2019-12-13T11:00:42”;
TimeConsuming = 6;
},
{
EndTime = “2019-12-13T10:58:53”;
Id = 77c0839de6371dbcdd9d0c76a343fcba;
Mileage = 2;
StartTime = “2019-12-13T10:55:55”;
TimeConsuming = 3;
},
{
EndTime = “2019-12-13T10:53:13”;
Id = 5333dd978d95a20948b6f517a8000ff8;
Mileage = 2;
StartTime = “2019-12-13T10:36:37”;
TimeConsuming = 17;
}
)
)
调用后
List = (
{
Date = “12\U670813\U65e5”;
List = (
{
EndTime = “2019-12-13 11:06:46”;
Id = e92660f91eb95b05848fb239ca2bfbca;
Mileage = 2;
StartTime = “2019-12-13 11:00:42”;
TimeConsuming = 6;
},
{
EndTime = “2019-12-13 10:58:53”;
Id = 77c0839de6371dbcdd9d0c76a343fcba;
Mileage = 2;
StartTime = “2019-12-13 10:55:55”;
TimeConsuming = 3;
},
{
EndTime = “2019-12-13 10:53:13”;
Id = 5333dd978d95a20948b6f517a8000ff8;
Mileage = 2;
StartTime = “2019-12-13 10:36:37”;
TimeConsuming = 17;
},
{
EndTime = “2019-12-13 10:33:18”;
Id = 3840e233d79226ea168f0375dcfa4a16;
Mileage = 2;
StartTime = “2019-12-13 10:29:05”;
TimeConsuming = 4;
},
{
EndTime = “2019-12-13 09:24:35”;
Id = 937fbabdc7474a052a005fb196b3d4f1;
Mileage = 2;
StartTime = “2019-12-13 09:21:08”;
TimeConsuming = 3;
},
{
EndTime = “2019-12-13 09:19:33”;
Id = ff43c95763019155f84164971920ada9;
Mileage = 2;
StartTime = “2019-12-13 09:17:24”;
TimeConsuming = 2;
},
{
EndTime = “2019-12-13 09:14:57”;
Id = 92515e4124146b468387f9c68d7960d2;
Mileage = 2;
StartTime = “2019-12-13 09:12:20”;
TimeConsuming = 3;
},
{
EndTime = “2019-12-13 09:05:00”;
Id = 69c98abd6d801250ffa18bca7931dcbc;
Mileage = 2;
StartTime = “2019-12-13 09:03:22”;
TimeConsuming = 2;
}
);
TotalMileage = 16;
TotalTimeConsuming = 40;
}
);
来源:CSDN
作者:害羞的猪
链接:https://blog.csdn.net/SingleYan/article/details/103609756