举例:
NSNumber *icon_height; // 创建NSNumber对象
margin_left1 = [NSNumber numberWithFloat: 15.0 / 2]; // 将浮点型转换成NSNumber类型的对象
NSArray *array1;
array1 = [NSArray arrayWithObjects:icon_height,nil]; //将浮点型对象放入数组中
float margin_width = [[arrTemp objectAtIndex:0] floatValue]; //取出数组中的元素,并将其转换成浮点型
各种数值
NSArray和NSDictionary只能存储对象,而不能直接存储任何基本类型的数据,如int、float 或 struct。但是你可以用对象来封装基本数值。例如,将int型数据封装到一个对象中,然后就可以将这个对象放入NSArray或NSDictionary中了。
1)NSNumber
Cocoa提供了NSNumber类来包装(即以对象形式实现)基本数据类型。
例如以下创建方法:
+ (NSNumber * ) numberWithChar: ( char ) value;
+ (NSNumber * ) numberWithInt: ( int ) value;
+ (NSNumber * ) numberWithFloat: ( float ) value;
+ (NSNumber * ) numberWithBool: (BOOL) value;
将基本类型数据封装到NSNumber中后,就可以通过下面的实例方法重新获取它:
- ( char ) charValue;
- ( int ) intValue;
- ( float ) floatValue;
- (BOOL) boolValue;
- (NSString * ) stringValue;