NSNumber与NSValue关系与作用

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

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

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

.NSNumber是NSValue的一个子类

    NSNumber

//包装
int age = ;
NSNumber *num = [NSNumber numberWithInt:age];//将基本数据类型int对象age 包装成NSNumber对象
@(age);//直接包装 //拆封
[num intValue]; NSValue 将结构体包装成OC对象 CGPoint p = CGPointMake(,);
NSValue *val = [NSValue valueWithPoint:p];//将结构体p包装成NSValue对象 //拆
[value pointValue]

最新文章

  1. C 语言学习的第 05 课:C 语言基础(01)
  2. java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: NO)
  3. 【CodeForces 624D】Array GCD
  4. 基础知识《四》---Java多线程学习总结
  5. 《Redis设计与实现》读书笔记
  6. CollectionBase类
  7. Struts2体系结构图以及详解
  8. werkzeug中服务器处理请求的实现
  9. CORS跨域资源共享
  10. Zend Studio配合Xdebug调试
  11. LeetCode 40. Combination Sum II (组合的和之二)
  12. web功能测试之表单、搜索测试
  13. ArrayList实现动态数组原理
  14. 复习C#的方法Math.Max和Math.Min
  15. 单KEY业务,数据库水平切分架构实践 | 架构师之路
  16. Codeforces 797C - Minimal string
  17. MVC应用程序播放FLV视频,部分视图可多地方重复引用
  18. 常用查找算法(Java)
  19. Highchar.js插件提示框千分位显示为空格而不是逗号 --(2018 08/06-08/12周总结)
  20. Unity3D深入浅出 -创造 物理材质(Physics Materials)

热门文章

  1. 学习使用turtlebot2——turtlebot2上使用Hokuyo激光雷达(型号UST-10LX)
  2. powershell Start-Sleep
  3. BLOCK方式实现OC程序中多个页面判定用户是否登录
  4. When an HTTP server receives a request for a CGI script
  5. 服务器(Ubuntu)远程访问ipython notebook(服务器运行ipython notebook 本地浏览器访问)
  6. (4.7)sql server2008 中的merge
  7. STL 中的链表排序
  8. 解释一下python中的赋值运算符
  9. JAVA中字符串问题
  10. NIO复习02