黑马程序员技术交流社区

标题: [笔记]包装类 和 基本数据类型 之间的转换总结 [打印本页]

作者: 蜡笔小炎    时间: 2015-5-26 02:09
标题: [笔记]包装类 和 基本数据类型 之间的转换总结
本帖最后由 蜡笔小炎 于 2015-5-31 11:08 编辑

:lol
  1. /******************************************
  2. *      今天对 “基础数据类型和包装类” 进行学习.收获如下:
  3. *
  4. *  1.  它们都是基本数据类型,并不是包装类:
  5. *      NSInteger相当于long型整数,
  6. *      NSUInteger相当于unsignedlong型整数,
  7. *      CGFloat在64位平台相当于double;32位平台相当于float。
  8. *
  9. *  2.  NSValue 和 NSNumber都是包装类,并且NSValue 是 NSNumber的父类。NSValue是比NSNumber更通用的包装类,用于将数据项添加到NSArray、NSSet等集合中。
  10. *
  11. *  3.  NSNumber是更具体的包装类,主要用于包装C语言的各种数据类型,主要包括如下三类方法:
  12. *       __
  13. *      |   1⃣️ + numberWithXxx:   直接将特定类型的值包装成 NSNumber
  14. *      |
  15. *     <    2⃣️ - initWithXxx:    需要先alloc一个NSNumber对象,在用一个Xxx类型的值初始化NSNumber
  16. *      |
  17. *      |__ 3⃣️ - xxxValue:       与以上两个相反,该方法返回NSNumber对象的基本类型值
  18. *
  19. *  4.  总结第3条:
  20. *
  21. *          [NSNumber numberWithXxx: 值 ]
  22. *          或[[NSNumber alloc] initWithXxx: 值 ]
  23. *
  24. *               _________>___>___>_________
  25. *              |                          |
  26. *          基本类型变量                  包装类对象
  27. *              |________<___<___<_________|
  28. *
  29. *                  [对象  XxxValue]

  30. Date: 2015/ 5/ 5
  31. *******************************************/

  32. #import <Foundation/Foundation.h>

  33. int main(int argc, const char * argv[])
  34. {
  35.     @autoreleasepool
  36.     {   //使用类方法初始化 NSNumber,再用实例方法返回基本数据值并打印
  37.         NSNumber* num = [NSNumber numberWithInt:20];
  38.         NSNumber* dou = [NSNumber numberWithDouble:3.4];
  39.         NSLog(@"%d", [num intValue]);
  40.         NSLog(@"%g", [dou doubleValue]);
  41.         //使用实例方法创建 NSNumber
  42.         NSNumber* ch = [[NSNumber alloc] initWithChar:'J'];
  43.         NSLog(@"%@", ch);
  44.     }
  45.     return 0;
  46. }
复制代码



作者: 星空眼泪    时间: 2015-5-26 02:25
谢谢楼主分享
作者: 蜡笔小炎    时间: 2015-5-26 07:52
星空眼泪 发表于 2015-5-26 02:25
谢谢楼主分享

客气,不谢:)
作者: 蜡笔小炎    时间: 2015-5-26 11:53
沉了,自己顶。。。
作者: 秦卷卷    时间: 2015-5-27 15:33
点赞。。。。
作者: 小路8866    时间: 2015-5-29 08:55
帮顶一下,不错
作者: 小龙女的萝卜    时间: 2015-5-29 09:01
没学到呢,先记下,以便交流




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2