NSNumber

NSNumber是OC中一系列数据类型,可以创建int对象,double,char等类型的对象。 

可以将基本数据类型转换为NSNumber类型的。

[objc]  view plain  copy
  1. //将基本数据类型封装为对象进行操作  
  2.         //将int类型的数值转换为一个nsnumber对象类型  
  3.         NSNumber *intNumber=[[NSNumber alloc]initWithInt:1];  
  4.         NSNumber *charNumber=[[NSNumber alloc]initWithChar:'C'];  
  5.         NSNumber *floatNumber=[[NSNumber alloc]initWithFloat:4.0f];  
  6.         NSNumber *doubleNumber=[[NSNumber alloc]initWithDouble:23.34];  
将这些对象都可以放入到数组中,OC中得数组可以存放任何类型的对象

[objc]  view plain  copy
  1. NSArray *arr=[[NSArray alloc]initWithObjects:intNumber,charNumber,floatNumber,doubleNumber, nil nil];  
NSNumber对象大小比较方法一:

[objc]  view plain  copy
  1. BOOL ret=[intNumber isEqualToNumber:intNumber1];  
NSNumber对象大小比较方法二:

[objc]  view plain  copy
  1. //NSComparisonResult不是类,是一个结构体  
  2.         //字符串的比较操作,同样可以用作数据操作  
  3.         NSComparisonResult result=[intNumber1 compare:intNumber];  
  4.         if (result==NSOrderedAscending) {  
  5.             NSLog(@"<");  
  6.         }else if (result==NSOrderedSame){  
  7.             NSLog(@"=");  
  8.         }else if(result==NSOrderedDescending){  
  9.             NSLog(@">");  
  10.         }  


那么如何将NSNumber对象的值转换为基本数据类型呢?

[objc]  view plain  copy
  1. int a =[intNumber intValue];  
  2.        NSLog(@"%d",a);  
  3.        float f=[floatNumber floatValue];  
  4.        double d=[doubleNumber doubleValue];  
  5.        char c=[charNumber charValue];  
各种数据类型的输出:

[objc]  view plain  copy
  1. //double类型是双精度类型,输出应当使用%lf  
  2.         //float类型用%f  
  3.         //int类型可以用%d  
  4.         //char类型可以用%c  
  5.         NSLog(@"int is %d,double is %lf,float is %f,char is %c",a,d,f,c);  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值