------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
一、NSNumber
1> 可以使用对象来封装基本数值;
2> NSNumber类可以包装基本数据类型,还包括无符号版本和各种long型数据及long long整型数据;
3> 常用方法:
NSNumber类包装基本数据类型:
+ (NSNumber *)numberWithChar:(char)value;
+ (NSNumber *)numberWithInt:(int)value;
+ (NSNumber *)numberWithFloat:(float)value;
+ (NSNumber *)numberWithBool:(BOOL)value;
将一个基本类型封装到NSNumber后,使用以下方法重新获得:
- (char)charValue;
- (int)intValue;
- (BOOL)boolValue;
- (NSString *)stringValue;
二、NSValue
1> NSNumber实际上是NSValue的子类,NSValue可以封装任意值;
2> 可以用NSValue将结构放入NSArray和NSDictionary中;
3> 常用方法:
创建新的NSValue:
+ (NSValue *)valueWithBytes:(const void *)value objCType:(const char *)type;
使用getValue:来提取数值(传递的是要存储这个数值的变量的地址)(先找地址再取值):
- (void)getValue:(void *)value;
三、NSNull
在关键字下如果属性是NSNull表明没有这个属性,没有数值的话表明不知道是否有这个属性。
+ (NSNull *)null; // 总返回一样的值