OC中语法糖,最新语法总结

<span style="font-size:24px;">    1.方法与顺序无关  
      
      
    2.枚举绑定数据类型  
    enum {  
        ObjectiveC,  
        Java,  
        Ruby,  
        Python,  
        Erlang  
    };  
    typedef NSUInteger Language;  
      
      
    3. 属性不用写@synthesize  
      
      
    4.语法简化  
    4.1 NSNumber  
    NSNumber *value;  
    value = @12345;  
    value = @123.45f;  
    value = @123.45;  
    value = @YES;  
      
      
    4.2 NSArray  
    NSArray *array;  
    array = @[];               //空数组  
    array = @[ a ];          //一个对象的数组  
    array = @[ a, b, c ]; //多个对象的数组  
      
      
    4.3 NSDictionary  
    NSDictionary *dict;  
    dict = @{};     //空字典  
    dict = @{ k1 : o1 };     //包括一个键值对的字典  
    dict = @{ k1 : o1, k2 : o2, k3 : o3 }; //包括多个键值对的字典  
      
      
    注:对可变的容器,能够用:  
    NSMutableArray *mutablePlanets = [@[  
       @"Mercury", @"Venus", @"Earth",  
       @"Mars", @"Jupiter", @"Saturn",  
       @"Uranus", @"Neptune"  
     ] mutableCopy];  
      
      
      
      
    5.对象下标  
    能够通过下标方式存取数组和字典的数据。相似C语言结构  
      
      
    5.1 NSArray  
    NSArray *array = @[ a, b, c ];  
    id obj = array[i];     //通过下标方式获取数组对象,替换原有写法:array objectAtIndex:i];  
    array[i] = newObj;     //也能够直接为数组对象赋值。替换原有写法:[array replaceObjectAtIndex:i withObject:newObj];  
      
      
    5.2 NSDictionary  
    NSDictionary *dict = @{ k1 : o1, k2 : o2, k3 : o3 };  
    id obj = dict[k2];     //获取o2对象,替换原有写法:[dic objectForKey:k2];  
    dic[k2] = newObj;  //又一次为键为k2的对象赋值。替换原有写法:[dic setObject:newObj forKey:k2]  
      
      
    6.小结  
    @# nsnumbers  
    @{} dictionaries  
    @“” strings  
    @[] arrays  
    @() expressions  </span>

原文地址:https://www.cnblogs.com/yxwkf/p/5250924.html