<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>
OC中語法糖,最新語法總結
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.