解析json不正确

Jon*_*nes 1 cocoa cocoa-touch objective-c

我正在从Apple JSON(应用程序的评级)解析一些东西,我尝试了类似的东西:

 if ([StoreParse objectForKey:@"averageUserRating"] == @"4.5") {
        NSLog(@"xx");
    } else {
        NSLog(@"xxx");
    }
Run Code Online (Sandbox Code Playgroud)

该应用程序的评级为4.5,如果我这样做

NSlog (@"%@", [StoreParse objectForKey:@"averageUserRating"]);
Run Code Online (Sandbox Code Playgroud)

输出为:4.5

但是当我运行脚本时,第一个代码输出中的NSlog是"xxx",有人可以帮助我吗?

小智 6

比较字符串(本质上是指向NSSring类实例的指针)是错误的,因为两个相同内容的字符串可以具有不同的内存地址.使用

if ([[StoreParse objectForKey:@"averageUserRating"] isEqualToString:@"4.5"])
Run Code Online (Sandbox Code Playgroud)

代替.