我有这个代码,并在互联网上搜索并发现它没问题,但它不与我合作
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
.....
NSLog(@"%@",[dict objectForKey:@"STATUS"]);
if ([[dict objectForKey:@"STATUS"] isEqualToString:@"Y"]) {
NSLog(@"Done");
}
NSLog显示Y如果法规
应该使用哪个答案 0 :(得分:3)
当你这样做时:
[dict setObject:[arr objectAtIndex:1] ...
我认为这是将字符串作为对象添加到字典中。 NSLog行正在工作,因为NSLog向每个对象发送“description”消息,将其转换为字符串值。你可以做同样的事情。
尝试改变这一点:
if ([[dict objectForKey:@"STATUS"] isEqualToString:@"Y"])
到此:
if ([[[dict objectForKey:@"STATUS"] description] isEqualToString:@"Y"])
在进行比较之前,这将得到objectForKey返回的对象的字符串值。
如果你认为可能有一个空格会丢掉比较,那么在比较之前修剪字符串,如下所示:
if ([[[dict objectForKey:@"STATUS"] stringByTrimmingCharactersInSet:
[NSCharacterSet whitespaceAndNewlineCharacterSet]] isEqualToString:@"Y"])