博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

OC基础数据类型-NSNumber

Posted on 2013-09-26 14:36  GISerYang  阅读(14861)  评论(0编辑  收藏  举报

1、NSNumber:专门用来装基础类型的对象,把整型、单精度、双精度、字符型等基础类型存储为对象

1 //基本数据类型
2 //专门用来装基础类型的对象
3 NSNumber * intNumber = [[NSNumber alloc] initWithInt:5];
4 NSNumber * floatNumber = [[NSNumber alloc] initWithFloat:3.14f];
5 NSNumber * doubleNumber = [[NSNumber alloc] initWithDouble:6.7];
6 NSNumber * charNumber = [[NSNumber alloc] initWithChar:'A'];

NSNumber是一个类簇,表面来看水一个类,实际上可以创建各种类的对象

 

1 NSNumber * intNumber2 = [NSNumber numberWithInt:6];

判断两个NSNumber是否相等

1 BOOL ret = [intNumber isEqualToNumber:intNumber2]; //这种比较也是可以跨不同对象的,比如:比较intNumber和floatNumber

比较两个整型的NSNumber的大小

1 //比较两个整型的NSNumber的大小
2 if ([intNumber compare:intNumber] == NSOrderedAscending) {
3     NSLog(@"<");
4 }else if([intNumber compare:intNumber2] == NSOrderedSame){
5     NSLog(@"=");
6 }else if([intNumber compare:intNumber2] == NSOrderedDescending){
7     NSLog(@">");
8 }

通过以下方法可以还原这些基本数据类型的数据

1 //通过以下方法可以还原这些基本数据类型的数据
2 NSLog(@"%d", [intNumber intValue]);
3 NSLog(@"%f", [floatNumber floatValue]);
4 NSLog(@"%f", [doubleNumber doubleValue]);
5 NSLog(@"%c", [charNumber charValue]);

 

结题!!!