您的位置:首页 > 移动开发 > IOS开发

iOS-OC-基础-NSNumber常用方法

2015-12-01 08:19 387 查看
/*===========================NSNumber数值对象=========================*/

// 将基本数据类型保存为NSNumber 对象类型
NSNumber *intNum = [NSNumber numberWithInt:10];
NSLog(@"num = %@",intNum);
NSNumber *floatNum = [NSNumber numberWithFloat:10.32];
NSLog(@"floatNum = %@",floatNum);
NSNumber *doubleNum = [NSNumber numberWithDouble:345.567890];
NSLog(@"doubleNum = %@",doubleNum);
NSNumber *boolNum = [NSNumber numberWithBool:YES];
NSLog(@"booleNum = %@",boolNum);

// 将NSNumber 对象类型还原成基本数据类型
int value1 = [intNum intValue];
float value2 = [floatNum floatValue];
double value3 = [doubleNum doubleValue];
BOOL value4 = [boolNum boolValue];

// 简介写法
NSNumber *num = @1;
NSNumber *num1 = @3.14;
NSNumber *num2 = @343.33434344;
NSNumber *num3 = @YES;

NSLog(@"num = %@",num);

/*===========================NSValue对象类型=========================*/

/* NSNumber 用来保存基本数据类型,但是像结构体这样的数据类型就保存不了了,
所以得使用 NSValue 来保存结构体这样的数据类型

OC 常用的结构体类型:
NSRange(表示范围) 、NSPoint(表示坐标位置)、NSSize(表示尺寸)、
NSRect(表示一个位置和尺寸)
*/

// 方式一:
// 把结构体保存为NSValue 对象类型
CGPoint point = {20,30};
NSValue *value = [NSValue value:&point withObjCType:@encode(CGPoint)];
//        NSArray *array = @[value];
NSLog(@"value = %@",value);

// getValue 还原结构体
CGPoint point1;
[value getValue:&point1];
NSLog(@"point.x = %.2f",point1.x);


本文GitHub地址https://github.com/zhangkiwi/iOS_SN_NSNumber
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: