【Object-C】包装类
NSInteger:long 类型
NSUInteger:unsigned long 类型
NSValue
NSNumber
#import <Foundation/Foundation.h>
int main(int argc
, char * argv[])
{
@autoreleasepool{
// 调用类方法将int类型的值包装成NSNumber对象
NSNumber* num = [[NSNumber alloc] initWithInt:28];
NSLog(@"%@" , [num class]);
// 调用类方法将double类型的值包装成NSNumber对象
NSNumber* de = [NSNumber numberWithDouble: 3.14];
NSLog(@"%d" , [num intValue]);
NSLog(@"%g" , [de doubleValue]);
// 先创建NSNumber对象,再调用initWithXxx方法执行初始化
{
@autoreleasepool{
// 调用类方法将int类型的值包装成NSNumber对象
NSNumber* num = [[NSNumber alloc] initWithInt:28];
NSLog(@"%@" , [num class]);
// 调用类方法将double类型的值包装成NSNumber对象
NSNumber* de = [NSNumber numberWithDouble: 3.14];
NSLog(@"%d" , [num intValue]);
NSLog(@"%g" , [de doubleValue]);
// 先创建NSNumber对象,再调用initWithXxx方法执行初始化
NSNumber* ch = [[NSNumber alloc] initWithChar:'b'];
NSLog(@"%@",[ch class]);
// 直接输出NSNumber对象,使用%@格式字符串
NSLog(@"%@" , ch);
// 直接输出NSNumber对象,使用%@格式字符串
NSLog(@"%@" , ch);
NSInteger m = 10 ;//相当于long 类型
NSLog(@"%li",m);
}
}
}
输出:
2014-11-28 18:13:15.872 NumberTest[2024:303] __NSCFNumber
2014-11-28 18:13:15.874 NumberTest[2024:303] 28
2014-11-28 18:13:15.875 NumberTest[2024:303] 3.14
2014-11-28 18:13:15.876 NumberTest[2024:303] __NSCFNumber
2014-11-28 18:13:15.876 NumberTest[2024:303] 98
2014-11-28 18:13:15.877 NumberTest[2024:303] 10
2014-11-28 18:13:15.874 NumberTest[2024:303] 28
2014-11-28 18:13:15.875 NumberTest[2024:303] 3.14
2014-11-28 18:13:15.876 NumberTest[2024:303] __NSCFNumber
2014-11-28 18:13:15.876 NumberTest[2024:303] 98
2014-11-28 18:13:15.877 NumberTest[2024:303] 10
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步