OC语言day08-11NSNumber

pragma mark NSNumber

pragma mark 概念

/**
 1.将基本数据类型 转换成 对象类型
 numberWithInt:
 numberWithDouble:
 ......
 
 2. 将 对象类型 转换成 基本数据类型
 intValue
 doubleValue
 ....
 
 3. 基本数据类型 转成 对象类型简写
 NSNumber *ageN1 = @(age);

 */

pragma mark 代码

#import 
#pragma mark 类

#pragma mark main函数
int main(int argc, const char * argv[])
{
#pragma NSNumber

// 将一个基本数据类型放到 数组中
#warning 1.需要 将基本数据类型 转换成 对象类型
    int age = 10;
    double number = 5.20;
    int vlaue = 5;
    
    //
    NSNumber *ageN = [NSNumber numberWithInt:age];
    NSNumber*nbmN = [NSNumber numberWithDouble:number];
    NSNumber *vlaueN = [NSNumber numberWithInt:vlaue];
    
    NSArray *arr = @[ageN,nbmN,vlaueN];
    NSLog(@"arr = %@",arr);
    
#warning 2. 将 对象类型 转换成 基本数据类型
//    [arr enumerateObjectsUsingBlock:^(id  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
//        NSLog(@"obj[%lu] = %@",idx,obj);
//    }];
    
    int temp = [ageN intValue];
    NSLog(@"temp %d",temp);
    double temp2 = [nbmN doubleValue];
    NSLog(@"temp2 %.2f",temp2);
    
#warning  3. 基本数据类型 转成 对象类型简写
    // 注意: 如果传入的是变量 那么必须在 @ 后面写上(),如果传入的常量,  那么@后面的()可以省略
    NSNumber *ageN1 = @(age);
//    NSNumber *nmbN1 = @number;    // 变量 必须加()
    NSNumber *nmbN1 = @10;          // 常量 可以省略 ()
    NSLog(@"ageN1 %@",ageN1);
    
    return 0;
}


你可能感兴趣的:(OC语言day08-11NSNumber)