Objective-C字面量語法總結

  一般狀況下,建立數組,字典的時候須要寫一些很長的方法名,今天就總結一下如何使用字面量語法代替這些方法。數組

 

一、數值的建立安全

    NSNumber *number1 = [NSNumber numberWithInt:1]; //傳統方法
    
    NSNumber *number2 = @1;                         //字面量建立方法

  只用一個@就代替了傳統的建立方法,顯得優雅整潔。app

    NSNumber *intNumber     = @1;
    NSNumber *floatNumber   = @1.5f;
    NSNumber *boolNumber    = @YES;
    NSNumber *charNumber    = @'b';

  

二、數組的建立ui

    NSArray *fruits = [NSArray arrayWithObjects:@"apple",@"orange",@"pear",nil];  
    NSArray *fruitss = @[@"apple",@"orange",@"pear"];    //使用[]建立數組

若用字面量建立數組的時候元素出現nil的時候,會拋出異常,程序終止執行。而傳統建立數組則不會報錯,建立數組的時候依次處理元素知道nil爲止,因此咱們可以提早發現錯誤,用字面量建立數組更加安全。spa

三、字典的建立code

 NSDictionary *userNameDic = [NSDictionary dictionaryWithObjectsAndKeys:@"mu",@"firstName",@"tou",@"lastName",nil];
 NSDictionary *userNameDicc = @{@"firstName":@"mu",@"lastName":@"tou"};

能夠看出,新語法建立的字典,比較符合人們的閱讀習慣key在左,value在右,不過建立字典的時候須要注意的是,鍵和值必須是對象,不能把c語言的類型放進去,應該轉變爲NSNumber後存入。對象

訪問字典值的方法blog

NSString *lastName = [userNameDic objectForKey:@"lastName"];
NSString
*lastName = userNameDicc[@"lastName"];

 

四、使用字面量語法建立的的對象都是不可變的,若是須要變成可變對象,須要作以下轉換it

NSMutableArray *fruits = [@[@"apple",@"orange",@"pear"] mutableCopy];
相關文章
相關標籤/搜索