首页 > 代码库 > oc的包装类 NSValue NSNumber

oc的包装类 NSValue NSNumber

我们都知道oc是面向对象的,但是oc是由c语言扩展而来的,c语言中的int 等类型都不是对象,那么oc 是如何拥有“对象”特征的呢?

oc提供了NSValue 和 NSNumber 来封装c语言的基本类型,这样就具有来面向对象的特征了。。。

NSValue是NSNumber的父类。

NSValue代表更通用的包装类,可以包装 short int float char 对象id 指针  通过对这些的包装就可以添加到NSArray等集合中了;

NSNumber代表更具体的包装类,主要有三个方法:(xxx代表各种数据类型)

  把基本类型的值包装成包装类的实例

       1 numberWithxxx: 

       2 initWithxxx:

  从包装中取出基本类型的值

       3 xxxValue: 

通过上面的方法可以看出 基本类型和包装类是相互转换的~~

 

oc的包装类 NSValue NSNumber