29,027
社区成员
发帖
与我相关
我的任务
分享
NSDictionary *advicenumber=[arraycheck objectAtIndex:i];
NSLog(@"&&&&&&*advicenumber:%@",advicenumber);
NSMutableDictionary *anotherDict = [NSMutableDictionary dictionary];
advicenumber=[NSDictionary dictionaryWithDictionary:anotherDict];
NSLog(@"*******advicenumber:%@",advicenumber);
if([[advicenumber objectForKey:@"advicenumber"] isEqualToString:[dicUPdata objectForKey:@"advicenumber"]])
{
[advicenumber setValue:@"已通过" forKey:@"boolpass"];
}
NSMutableDictionary *anotherDict = [NSMutableDictionary dictionary]; ////////这是一个空的对象
advicenumber=[NSDictionary dictionaryWithDictionary:anotherDict]; ///////advicenumber的指针被指向了anotherdict这个空对象,所以在使用NSLog输出时没有数据
错误的原因在后面的注释中有说明。
为什么搞的那么麻烦,从arrayCheck中取出时直接转成NSMutableDictionary
NSMutableDictionary *advicenumber=(NSMutableDictionary *)[arraycheck objectAtIndex:i];
NSLog(@"dictionary is :%@",advicenumber);
if (advicenumber !=[NSNull null] ) {
if ([advicenumber[@"advicenumber"] isEqualToString:dicUPdata[@"advicenumber"]]) {
[advicenumber setValue:@"已通过" forKey:@"boolpass"];
}
}