Objective-C学习- 数字对象 NSNumber

  对于Objective-C 的数组 NSArray  只能存对象,不能存取基本数据类型,如 整型int 、浮点型float、 双精度浮点型double、 字符型char,但Objective-C为了可以将基本数据类型存到数组,有一个类型叫作NSNumber 的类型,叫作数字对象。(有些字词用的不是很准确,待找到合适的词定会修改过来)数组

用法以下:函数

   // 整型int 转换成 NSNumber 类型spa

      NSNumber * number_int = [[NSNumber alloc] initWithInt:65];对象

    

      // 字符型char 转换成 NSNumber 类型it

      NSNumber * number_char = [[NSNumber allocinitWithChar:'A'];class

    

     // 浮点型float 转换成 NSNumber 类型原理

      NSNumber * number_float = [[NSNumber alloc] initWithFloat:2.0f];数据类型

    

     // 双精度浮点型double 转换成 NSNumber 类型float

      NSNumber * number_double = [[NSNumber alloc] initWithDouble:5.6];方法

    

     //初学者想要经过键盘输入来赋值,其实原理是同样的,例如:将浮点类型c转换成 NSNumber 类型

      char c ;

      scanf("%c",&c);

      NSNumber * number_free = [[NSNumber alloc] initWithChar:c];

    

    // NSNumber类型 转换成 整型int

      int iNumber = [number_int intValue];

    

    // NSNumber类型 转换成 字符型char

      char cNumber = [number_char charValue];

    

    // NSNumber类型 转换成 浮点型float

      float fNumber = [number_float floatValue];

    

    // NSNumber类型 转换成 双精度浮点类型

      double dNumber = [number_double doubleValue];

    

    /*

     [number isEqualToNumber:(NSNumber *)] 函数是比较两个 NSNumber类型的方法

     BOOL 类型的返回值 只有两种  一是YES(也就是1)  二是NO(也就是0)

     'A' ASCALL 码是 65

     number_int对象的值就是65

     number_char对象的值是‘A’,相比较是相等的,由于‘A’就是65

     */

     BOOL isSame = [number_int isEqualToNumber:number_char];

相关文章
相关标签/搜索