if和else语句都是随机调用的

时间:2013-11-15 17:27:24

标签: objective-c nsnumber

我有一个解析HTML的方法。在那里有一个if / else语句:

if ((NSNumber1 == NSNumber2)) {
    NSLog(@"dafuq1?");
} else {
    NSLog(@"dafuq2?");
}

日志有时是这样的:

  

...:dafuq1

     

...:dafuq2

所以这两个部分都被调用了。但有时候只有其中一个被召唤!为什么呢?

顺便说一下。 iOS 7.0.4,Xcode 5.0.1

和     (NSNumber1 == NSNumber2)是真的

1 个答案:

答案 0 :(得分:6)

这些是对象。您无法使用==来比较相等性。使用isEqualToNumber:

if ([NSNumber1 isEqualToNumber:NSNumber2])