【发布时间】:2014-04-16 04:00:26
【问题描述】:
NSString *downloadedItemIDString = [dict objectForKey:@"id"];
NSLog(@"downloadedItemIDString = %@", downloadedItemIDString);
if([storedRecordsDict objectForKey:downloadedItemIDString] != nil)
NSLog(@"1) Item WITH ID %@ EXISTS!", downloadedItemIDString);
if([storedRecordsDict objectForKey:@"6226691114401792"] != nil)
NSLog(@"2) Item WITH ID 6226691114401792 EXISTS!");
日志:
2014-04-15 20:51:37.336 AppDemo[2201:60b] 已下载ItemIDString = 6226691114401792
2014-04-15 20:51:37.337 AppDemo[2201:60b] 2) ID 为 6226691114401792 的项目存在!
我是 Obj C 的新手,我已经尝试解决这个问题好几个小时了。请帮助我理解为什么在提供 NSString 作为键时它找不到对象?
【问题讨论】:
-
id 值上可能有一些空格。在日志语句中添加引号以确保:
NSLog(@"downloadedItemIDString = '%@'", downloadedItemIDString);并查看是否出现任何空格。 -
2014-04-15 21:05:19.314 AppDemo[2232:60b] 已下载ItemIDString = '6226691114401792' 2014-04-15 21:05:19.315 AppDemo[2232:60b] 2) 带有 ID 的项目'6226691114401792' 存在!
-
我已经添加了 '' 但仍然很神秘.. :/
-
再测试:添加如下日志:
NSLog(@"downloadedItemIDString class = %@", [downloadedItemIDString class]);. -
downloadedItemIDString可能不是 NSString 而是 NSNumber。
标签: ios objective-c nsstring nsdictionary