Objective-C でコンパイラをサポートする NSNumber リテラルができたので、NSNumber を既知の整数値と比較するための好ましい方法はありますか?
古いやり方は
[myNumber integerValue] == 5
[myNumber isEqualToNumber:@5]
これで、 または も実行できます[myNumber isEqualToNumber:@(someVariable)]
。
メソッドに利点はありますisEqualToNumber:
か、または比較する値が既に NSNumber でない限り、integerValue を使用する必要がありますか?
私が見ることができる利点の 1 つは、someVariable が NSInteger から CGFloat に変更された場合、新しい方法でコードを変更する必要がないことです。