//数字对象的常用方法处理 NSnumber作用就是把基本数据封装成对象 好让存储容器 能存储这些对象
float p = 3.14;
//准换成基本包装对象
[[NSNumber numberWithFloat:p] floatValue];
//封装整数
[[NSNumber numberWithInt:1] intValue];
//封装Long数据
[[NSNumber numberWithLong:12] intValue];
//封装布尔 转换成基本数据类型
[[NSNumber numberWithLong:YES] boolValue];
//封装小数 转成基本数据类型
[[NSNumber numberWithDouble:3.11] doubleValue];
//NSValue可以包装任意类型(结构体,指正等等);
NSSize size = {100,100};
NSValue *values = [NSValue value:&size withObjCType:@encode(NSSize)];
NSSize newSize;
[values getValue:&newSize];
//打印结构体函数 还有其他的 例如Range等
NSStringFromSize(newSize);
//NIL不能存放数组字典 如果想存放NIL值可以使用NSNULL代替 创建对象就是个NULL;
NSArray *arr = [NSArray arrayWithObjects:[[NSNull alloc] init], nil];
NSLog(@"%@,arr",arr);
//集合,数字对象新的写法
NSArray *array = @[@"张三",@14,@15,@3.14,@YES];
//可以通过下标获取数据
id obj = array[0];
//可变数组
NSMutableArray *example = @[@"张三",@"李四"];
//字典写法
NSDictionary *dic = @{@"张三":@0,@"李四":@1};
//获取数据
NSLog(@"%@",dic[@"张三"]);
//这些创建的数组 集合 会自动加入自动释放 无需管理
//基本数据类型初始化
NSNumber *intnum = @123;
NSNumber *floas = @3.14;
NSNumber *idoub = @1.33;
NSNumber *bbool = @YES;
NSNumber *jj = @22;
int jjs = 33;
NSNumber *result = @(12+jjs); //可以这样相加
OC-NSnumber和NSvalueNSNULL以及集合数组优化写法
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.