NSNumber
初始化
NSNumber是NSValue的一个子类,可以将数据类型转换为对象类型方便操作
NSNumber *num1 = [NSNumber numberWithInt:101];
相应的将对象类型转换成数据类型
NSLog(@"%d",num1.intValue);
比较方法
NSNumber *num2 = [NSNumber numberWithInt:12];
NSLog(@"cmp = %ld",[num1 compare:num2]);
在NSNumber中的比较是比较数字大小,而在NSString中的比较是比较相同位置上字符的大小;
NSValue
初始化
可以将一些其他数据类型转换成对象类型
NSValue *value1 = [NSValue valueWithRange:NSMakeRange(1,4)];
NSValue *value2 = [NSValue valueWithBytes:(const void *)value objCType:@encode(type)];
//valueWithBytes objCType方法可以将自定义结构体类型的数据转换成对象,Bytes后面写结构体数据的名字,objCType后面的@encode()括号里写自定义结构体名字;