既然我们在 Objective-C 中有了带有编译器支持的 NSNumber 字面量,有没有一种首选的方法可以将 NSNumber 与已知整数值进行比较?
老办法是
[myNumber integerValue] == 5
现在我们[myNumber isEqualToNumber:@5]
甚至可以做到[myNumber isEqualToNumber:@(someVariable)]
。
该方法是否有优势isEqualToNumber:
,或者我们应该坚持使用 integerValue,除非要比较的值已经是 NSNumber?
我可以看到的一个优点是,如果 someVariable 从 NSInteger 更改为 CGFloat,则新方法不需要更改代码。