iOS - Why Does It Work When I Compare Two NSNumbers With “==”?
问题 In my app, I accidentally used "==" when comparing two NSNumber objects like so: NSNumber *number1; NSNumber *number2; Later on, after these objects' int values were set, I accidentally did this: if (number1 == number2) { NSLog(@"THEY'RE EQUAL"); } And, confusingly, it worked! I could have sworn I was taught to do it this way: if (number1.intValue == number2.intValue) { NSLog(@"THEY'RE EQUAL"); } How did using "==" between the two NSNumber objects work, and why? Does that mean it's okay to