OC视频笔记4.4(NSNumber的使用方法)4.5(NSValue的使用)(NSNull的使用)

数字对象的简介:

在之前的学习中,已经对基本数据类型有了一定的了解。但是他们不是对象们不能像他们发送消息。然而有时候也需要经他们当做对象来处理,比如我们需要把基本类型放在集合中(因为在cocoa中只能把对象放在集合里面,不能把基本数字类型放在集合里面),纳那么就需要将基本数字类型转换成数字对象。OC中提供了数值对象(NSNumber)可以将基本数字类型“包装”成对象,这也我们就可以使用基本数字类型的对象了。


NSNumber的使用:

NSNumber的创建:

1创建一个NSNumber的指针对象,让其指向包装好的基本数字类型

NSNumber *typeNumber = 【NSNumber numberWithType:typeValue】;


2解包:

Type typrValue = 【typeNumber typeValue】;


优化与法:

NSNumber *typeValue = @typeValue;

NSNumber * intNumber = @12;



NSValue的使用方法:

结构体是C语言里面定义的,C是面向过程的语言,C没有对象,所以结构体不是对象,不能把结构体当做对象来操作,那么就需要像基本数据类型一样对结构体进行包装,NSNumber里面没有对结构体进行包装的方法,但是它的父类NSvalue里面有。

NSValue可以对结构体(NSRange)进行包装

创建(封包):

NSRange  range = {10,20};

NSValue *rangeValue = 【NSValue valueWithRange:range】;


解包(解包):

NSRange range = 【rangeValue rangeValue】;


3自己定义的结构体的封包:

struct  WXPoint{

       float  a ;

       float  b ;

}

struct  WXPoint  p 1= {100,100};

NSValue *wxpoint = 【NSValue value:&p1   withObjectType:@encode(struct WXPoint)】;


4自己定义的结构体的解包:

struct  WXPoint  p2;

【wxpoint  getValue:p2】;



NSNull的使用方法:

nil不能存入到集合里面(数组,NSSet,字典),所以要封装成对象。就要用到NSNull方法。

NSNull *n1 = 【NSNull null】;


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值