首页 > 其他 > 详细

NSNumber 与NSValue

时间:2018-10-24 16:39:57      阅读:172      评论:0      收藏:0      [点我收藏+]
    NSNumber与NSValue关系与作用

1.由于集合里只能存放对象,不可以存放基本数据类型,所以我们有时候需要讲一些对象比如基本数据类型,结构体等存到NSDictionary NSArray中,我们就需要将这些数据类型或结构体包装成OC对象,以便集合能访问到。常用的用来包装这些类型的有NSNumber NSValue

2.NSNumber只能包装基本数据类型,比如int, float,char,BOOL等

3.NSValue可以包装任意一个对象,包括系统自定义的数据结构,结构体等等

4.NSNumber是NSValue的一个子类

    NSNumber

//包装
int age = 20;
NSNumber *num = [NSNumber numberWithInt:age];//将基本数据类型int对象age 包装成NSNumber对象
@(age);//直接包装

//拆封
[num intValue];

    NSValue

将结构体包装成OC对象

CGPoint p = CGPointMake(1,2);
NSValue *val = [NSValue valueWithPoint:p];//将结构体p包装成NSValue对象

//
[value pointValue]

 

NSNumber 与NSValue

原文:https://www.cnblogs.com/Free-Thinker/p/9844269.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!