読者です 読者をやめる 読者になる 読者になる

日々精進

新しく学んだことを書き留めていきます

NSNumberとプリミティブ型の使い分け基準

Objective-C

ちょっと曖昧にしていたところがあったのでNSNumberとプリミティブ型の使い分け基準を確認した。


NSNumber
・メリット
 ・フォーマットしやすい(NSNumberFormatterが使える)
 ・オブジェクトしか渡せないところでつかえる(Arrayにaddする時とか)
・デメリット
 ・四則演算、比較がめんどくさい。
 ・整数でも実数でも正でも負でも入るので、値に制約を付けられない。
  NSUIntegerを使えば正の整数しか入らないんだよということを伝えられる。


上記メリデメを比較して型を決めてます。
クラスのプロパティをNSNumberとプリミティブ型のどちらにしてもNSSortDescriptorでソートはできるっぽい。KVCもできそう?ここちゃんと調べてません・・・
演算子オーバーロードが出来ればNSNumberでも四則演算を簡単にできるのにな。。