我正在尝试使用我从服务器获取JSON响应的字典。当我打印字典的描述时,一切都按顺序
Printing description of dict:
{
category = 1;
code = 1;
name = "xxxx";
pictureUrl = "xxxx";
sessionId = xxx;
status = 0;
}
我需要“code”值,当我使用objectForKey:@“code”来获取它时,我得到一个错误的值:
int code = [NSDictionary objectForKey:@"code"];
在此之后我打印出代码的值及其类似3483765348,这是非常非常错误的。
为什么会这样?
答案 0 :(得分:7)
返回的对象是NSNumber而不是int(不是对象)。 如果你想要int值,试试这个
int code = [[myDictionary objectForKey:@"code"] intValue];
答案 1 :(得分:3)
尝试使用以下代码来解决您的问题。根据您的代码,它只返回您必须将其转换为int值的值。使用这段代码
int code = [[NSDictionary objectForKey:@"code"]intValue];
希望这有助于!!!
答案 2 :(得分:0)
-objectForKey:
不会返回int
,而是返回一个对象(在您的类型为NSNumber
的情况下)。
NSNumber *code = [myDict objectForKey:@"code"];
NSInteger codeInteger = [code integerValue];
答案 3 :(得分:0)
int code = [[yourResultingDictionary objectForKey:@"code"] intValue];
我认为这会对你有所帮助。
答案 4 :(得分:0)
对象键仅返回数组值,因此您将使用键作为键路径。
user_idstr = [tweet valueForKeyPath:@"properties.user_id"];