A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© luguo 中级黑马   /  2015-6-12 13:48  /  924 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. 它能够把基本数据类型包装成OC对象。
  2. // 将整形包装成OC对象
  3. NSNumber *num1 = [NSNumber numberWithInt:120];
  4. // 将浮点形包装成OC对象
  5. NSNumber *num2 = [NSNumber numberWithDouble:0.5];
  6. // 把包装后的数据存放到OC数组中
  7. NSArray *array = @[@"年龄",num1];
  8. // 遍历数组
  9. for (id obj in array)
  10. {
  11.     NSLog(@"%@", obj);
  12. }
  13. 通过NSNumber的方法能够把所有基本数据类型包装成OC对象,再存放到OC数组中。要把NSNumber包装后的对象还原成基本数据类型,操作如下:
  14. // 将NSNumber类型的对象还原成基本数据类型
  15. int age = [num1 intValue];
  16. double a = [num2 doubleValue];
  17. 还可以 使用编译器特性快速包装一个基本数据:
  18. // 快速包装
  19. @120;
  20. @0.5;
  21. @NO;


  22. #import <Foundation/Foundation.h>

  23. int main()
  24. {
  25.     // 将整形包装成OC对象
  26.     NSNumber *num1 = [NSNumber numberWithInt:120];
  27.     // 将浮点形包装成OC对象
  28.     NSNumber *num2 = [NSNumber numberWithDouble:0.5];
  29.    
  30.     // 把包装后的数据存放到OC数组中
  31.     NSArray *array = @[@"年龄",num1];
  32.    
  33.     // 遍历数组
  34.     for (id obj in array)
  35.     {
  36.         NSLog(@"%@", obj);
  37.     }
  38.    
  39.     // 将NSNumber类型的对象还原成基本数据类型
  40.     int age = [num1 intValue];
  41.     double a = [num2 doubleValue];
  42.    
  43.     // 快速包装
  44.     @120;
  45.     @0.5;
  46.     @NO;
  47.    
  48.     // 使用快速包装,再存放到数组中
  49.     NSArray *array2 = @[@"hello",@100, @YES, @0.3, @'H'];
  50.    
  51.     return 0;
  52. }
复制代码

2 个回复

倒序浏览
不错,顶一个!
回复 使用道具 举报
围观学习啦,加油!!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马