新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要为大家展示了“ios中数据对象NSNumber怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“ios中数据对象NSNumber怎么用”这篇文章吧。
创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、网站制作、云和网络推广、小程序开发、云和网络营销、云和企业策划、云和品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供云和建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com
1 Number Objects
integers, floats, and longs在object-c中是基本的数据类型,不是数据对象。
为什么需要使用数据对象:假如你想把数据存到NSArray中,NSArray是不能存储基本的数据类型的,所以需要把基本的数据类型
转化为数据对象,然后存到NSArray中去。 所以这是数据对象的用处。
1.1 创建一个整型的数据对象
NSNumber *intNumber;
NSInteger myInt;
intNumber = [NSNumber numberWithInteger: 100];
还可以采用这样的初始化:intNumber = @100;
//把数据对象转化成基本数据类型
myInt = [intNumber integerValue];
NSLog (@"%li", (long) myInt);
注意如下访问是错误的:
NSLog (@"%li", (long) [myNumber integerValue]);
2 数据对象的比较
isEqualToNumber : 比较2个数据对象是否相等
compare: 比较2个数据对象的大小
A compare:B
NSOrderedAscending : A
NSOrderedSame : A=B
NSOrderedDescending: A>B
3 数据对象不可改变
NSNumber *myNumber = [[NSNumber alloc] initWithInt: 50];
...
[myNumber initWithInt: 1000];
这样的代码会让程序挂掉, 数据对象只能被初始化一次
4 numberWithInt: VS numberWithInteger:
使用numberWithInt:方法只能用intValue把它的值还原到基本类型,可以使用%i 打印出来
使用 numberWithInteger:方法,只能用integerValue把它的值还原到基本类型,可以用%li打印出来它的值
5 api应用如下:
numberWithChar: initWithChar: charValue
numberWithUnsignedChar: initWithUnsignedChar: unsignedCharValue
numberWithShort: initWithShort: shortValue
numberWithUnsignedShort: initWithUnsignedShort: unsignedShortValue
numberWithInteger: initWithInteger: integerValue
numberWithUnsignedInteger: initWithUnsignedInteger: unsignedIntegerValue
numberWithInt: initWithInt: intValue
numberWithUnsignedInt: initWithUnsignedInt: unsignedIntValue
numberWithLong: initWithLong: longValue
numberWithUnsignedLong: initWithUnsignedLong: unsignedLongValue
numberWithLongLong: initWithLongLong: longlongValue
numberWithUnsignedLongLong: initWithUnsignedLongLong: unsignedLongLongValue
numberWithFloat: initWithFloat: floatValue
numberWithDouble: initWithDouble: doubleValue
numberWithBool: initWithBool: boolValue
以上是“ios中数据对象NSNumber怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!