数値に対するラッパクラス

Tatsuro Ueda edited this page Mar 11, 2014 · 1 revision

配列や辞書といったコレクションオブジェクトには、任意のオブジェクトを格納することができる。しかしObjective-Cでは、整数や実数といったデータ型はオブジェクトではないため、そのままではコレクションに格納できない。

Foundationフレームワークには

  • 数値を表現するクラスであるNSValueと、
  • そのサブクラスNSNumber

がある。これらは数値や座標などのデータ型をオブジェクトとして扱うためのラッパである。これらを用いることによって、数値データをコレクションに格納できるようになる。

空のオブジェクトNSNullというのもある。

NSValueとNSNumberはクラスクラスタとして提供されているため、NSValueやNSNumberがインスタンスの直接のクラスではない点、通常の方法ではサブクラスが作成できない点に注意が必要。