NSNumber 是一个数值类型封装起来的数值。
装箱:基础类型->对象类型
NSNumber *number=[NSNumber numberWithInt:12];
拆箱:对象类型->对象类型
int a = [num intValue];
NSinteger
NSValue 是NSNumber 父类 不可变 将结构体封装成对象
NSRange range;
range.location=1; range.length=5;
装箱
NSValue *value=[NSValue valueWithRange:range]
NSRange range2;
拆箱
[value getValue:&range2];
可以自定义类型的结构体 rect 为结构体变量 MyRect 为结构体名称
NSValue *rectValue =[NSValue valueWithBytes:&rect objCType:encode(MyRect)];
NSNull 封装nil
NSArray *arr =[NSArray arrayWithObjects:@"tom",[NSNull null],nil];
for(int i=0; i<[arr count]; i++){}