在作IOS开发时,不少时候都是类和对象的使用,可是int、flaot、double等不是对象,因此须要用到NSNumber类来转换。NSNumber就是数字对象,咱们能够使用NSNumber对象来建立不一样类型的数字对象。spa
例如:code
//建立integer类型对象orm
NSNumber *intNumber = [NSNumber numberWithInteger:100];对象
nslog(@"%li",[intNumber integerValue]);开发
//建立char类型对象it
NSNumber *charNumber = [NSNumber numberWithChar:"m"];class
nslog(@"%c",[charNumber charValue]);float
//建立float类型对象方法
NSNumber *floatNumber = [NSNumber numberWithFloat:"62.35"];经验
nslog(@"%f",[floatNumber floatValue]);
//建立double类型对象
NSNumber *doubleNumber = [NSNumber numberWithDouble:"37e+9"];
nslog(@"%lg",[doubleNumber doubleValue]);
//判断两个对象的值是否相等
if([intNumber isEqualToNumber:floatNumber] == YES)
{
nslog(@"值相等");
}
else
{
nslog(@"值不相等");
}
//比较两个对象的值的大小
if([intNumber compare:doubleNumber] == NSOrderedAscending)
{
nslog(@"左边的数字小");
}
else
{
nslog(@"右边的数字大");
}
实际经验
本人再作开发的时候,采用以下方法初始化
NSNumber *number = [[NSNumber alloc] init];
初始化后,发现这个对象(number)为nil,也就是说初始化不成功,才经过查找资料,发现NSNumber类应该是如上用法。