NSNumber与NSInteger的区别
来源:互联网 发布:外汇占款 知乎 编辑:程序博客网 时间:2024/05/21 17:38
NSNumber 所拥有的类方法,如下:
+ (NSNumber*)numberWithChar: (char)value;
+ (NSNumber*)numberWithInt: (int)value;
+ (NSNumber*)numberWithFloat: (float)value;
- (NSNumber*)numberWithBool: (BOOL) value;
NSNumber *myNumber,*floatnumber,*intNumber,*doublenumber,*charNumber;
myNumber = [NSNumber numberWithLong:0xabcdef];
floatnumber = [NSNumber numberWithFloat:12.33];
intNumber = [NSNumber numberWithInt:100];
doublenumber = [NSNumber numberWithDouble:12345e+15];
charNumber = [NSNumber numberWithChar:’X'];
将基本类型数据封装到NSNumber中后,就可以通过下面的实例方法重新获取它:
- (char)charValue;
- (int)intValue;
- (float)floatValue;
- (BOOL)boolValue;
- (NSString*)stringValue;
myInt = [intNumber intValue]; //获取对象的整型值
//[floatnumber floatValue];
//[doublenumber doubleValue];
//[charNumber charValue];
有了以上概念,我们来考一个面试题。 以下code 编译是否有误?
NSMutableArray *myArray = [[NSMutableArray alloc] init ];
[myArray addObject: 6 ];
这样是会引发编译错误的,因为NSMutableArray中所要存放的是一个对象,但‘6’不是。这怎么办呢? 需要用到 NSNumber。
NSMutableArray *myArray = [[NSMutableArray alloc] init ];
[myArray addObject: [NSNumber numberWithInt:6] ];
NSLog(@"array content is %@", myArray);
- NSNumber与NSInteger的区别
- NSNumber与NSInteger的区别
- NSNumber与NSInteger的区别
- NSNumber与NSInteger的区别
- NSNumber与NSInteger的区别
- NSNumber与NSInteger的区别
- int, NSInteger, NSUInteger, NSNumber的区别
- int、 NSInteger、 NSUInteger、NSNumber之间的区别
- NSNumber与NSInteger转换遇到的问题
- iOS NSInteger/NSUInteger与int/unsigned int、long/unsigned long之间的区别!Nsnumber
- int,NSInteger,NSUInteger,NSNumber区别
- int、NSInteger、NSUInteger、NSNumber的区别和联系
- int、NSInteger、NSUInteger、NSNumber的区别和联系
- 【iOS】_int、NSInteger、NSUInteger、NSNumber的区别和联系
- int、NSInteger、NSUInteger、NSNumber的区别和联系
- 基础知识之_int、NSInteger、NSUInteger、NSNumber的区别和联系
- NSInteger 与 int的区别
- int、NSInteger、NSUInteger、NSNumber的关系
- synchronize和生产者消费者模式
- Php提交包含特殊字符的参数的方法
- UI - NavigationController
- Android NDK开发,没有你想象的那么难
- Android App Ant打包
- NSNumber与NSInteger的区别
- java判断一个char是否是由字母数字组成
- 高斯模糊实现小结
- Linux Framebuffer驱动剖析之一—软件需求
- jquery学习--jQuery安装
- 基于云计算的性能测试平台-云测汇
- Linux下解决mysql中文乱码问题
- Servlet复习(三)监听器
- 146,流程控制语句