OC-NSnumber和NSvalueNSNULL以及集合數組優化寫法

    //數字對象的常用方法處理  NSnumber作用就是把基本數據封裝成對象 好讓存儲容器 能存儲這些對象
    
    float p = 3.14;
    
    //準換成基本包裝對象
    [[NSNumber numberWithFloat:p] floatValue];
    //封裝整數
    [[NSNumber numberWithInt:1] intValue];
    //封裝Long數據
    [[NSNumber numberWithLong:12] intValue];
    //封裝布爾 轉換成基本數據類型
    [[NSNumber numberWithLong:YES] boolValue];
    //封裝小數 轉成基本數據類型
    [[NSNumber numberWithDouble:3.11] doubleValue];
    
    
    //NSValue可以包裝任意類型(結構體,指正等等);
    NSSize size = {100,100};

    NSValue *values = [NSValue value:&size withObjCType:@encode(NSSize)];
    
    NSSize newSize;
    [values getValue:&newSize];
    
    //打印結構體函數 還有其他的 例如Range等
    NSStringFromSize(newSize);
    
    //NIL不能存放數組字典 如果想存放NIL值可以使用NSNULL代替 創建對象就是個NULL;
    NSArray *arr = [NSArray arrayWithObjects:[[NSNull alloc] init], nil];
    NSLog(@"%@,arr",arr);
    
    
    //集合,數字對象新的寫法
    
    NSArray *array = @[@"張三",@14,@15,@3.14,@YES];
    //可以通過下標獲取數據
    id obj = array[0];
    //可變數組
    NSMutableArray *example = @[@"張三",@"李四"];
    //字典寫法
    NSDictionary *dic = @{@"張三":@0,@"李四":@1};
    //獲取數據
    NSLog(@"%@",dic[@"張三"]);
    //這些創建的數組 集合 會自動加入自動釋放 無需管理
    
    //基本數據類型初始化
    
    NSNumber *intnum = @123;
    NSNumber *floas = @3.14;
    NSNumber *idoub = @1.33;
    NSNumber *bbool = @YES;
    NSNumber *jj = @22;
    int jjs = 33;
    NSNumber *result = @(12+jjs); //可以這樣相加

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章