zoukankan      html  css  js  c++  java
  • 十四:NSNumber

    一、NSNumber:

    因为NSArray与NSDictionary中值能存放对象,不能存放基本数据类型,所以需要将基本数据类型转化为对象类型,就用到了NSNumber。同样的对象类型也能转化为基本数据类型,详细代码如下:

     1 #import <Foundation/Foundation.h>
     2 int main(int argc, const char * argv[]) {
     3     @autoreleasepool {
     4         int i = 10;
     5         double d = 3.1;
     6         char c = '5';
     7         BOOL b = 1;
     8         //基本数据类型转换成对象类型
     9         NSNumber *intNum = [NSNumber numberWithInt:i];
    10         NSNumber *doubleNum = [NSNumber numberWithDouble:d];
    11         NSNumber *charNum = [NSNumber numberWithChar:c];
    12         NSNumber *boolNnum = [NSNumber numberWithBool:b];
    13         NSArray *arr = @[intNum,doubleNum,charNum,boolNnum];
    14         NSLog(@"%@",arr);
    15         //对象类型转化为基本数据类型
    16         int ii = [intNum intValue];
    17         double dd = [doubleNum doubleValue];
    18         char cc = [charNum charValue];
    19         BOOL bb = [boolNnum boolValue];
    20         NSLog(@"%d %f %c %d",ii,dd,cc,bb);
    21         //基本数据类型转化为对象类型的简写
    22         NSNumber *num1 = @10;
    23         NSNumber *num2 = @(dd);
    24         NSLog(@"%@ %@",num1,num2);
    25         //注意:当@后面为变量时候一定要加括号,当为常量时候可以省略括号!
    26     }
    27     return 0;
    28 }

    输出结果:

    1 2016-05-03 10:25:27.367 NSNumber与NSValue[19005:3404888] (
    2     10,
    3     "3.1",
    4     53,
    5     1
    6 )
    7 2016-05-03 10:25:27.368 NSNumber与NSValue[19005:3404888] 10 3.100000 5 1
    8 2016-05-03 10:25:27.368 NSNumber与NSValue[19005:3404888] 10 3.1
    9 Program ended with exit code: 0
  • 相关阅读:
    NSCoding相关
    object c 运行时编程指南
    iphone 框架体系结构
    Object c 反射
    hook qq 聊天内容(转)
    iphone地址本操作
    通过xib文件创建子控件(转)
    iphone生成唯一字符串
    反射手册笔记 6.NET组件模型
    IDC项目技术总结
  • 原文地址:https://www.cnblogs.com/hissia/p/5455088.html
Copyright © 2011-2022 走看看