1.方法與順序無關
2.列舉繫結資料型別
enum ;
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 = @; //包含乙個鍵值對的字典
dict = @; //包含多個鍵值對的字典
注:對可變的容器,可以用:
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 = @;
id obj = dict[k2]; //獲取o2物件,替換原有寫法:[dic objectforkey:k2];
dic[k2] = newobj; //重新為鍵為k2的物件賦值,替換原有寫法:[dic setobject:newobj forkey:k2]
6.小結
@# nsnumbers
@{}dictionaries
@「」strings
@arrays
@()expressions
OC新語法總結
1.方法與順序無關 2.列舉繫結資料型別 enum typedef nsuinteger language 3.屬性不用寫 synthesize 4.語法簡化 4.1 nsnumber nsnumber value value 12345 value 123.45f value 123.45 val...
OC中語法糖,最新語法總結
1.方法與順序無關 2.列舉繫結資料型別 enum typedef nsuinteger language 3.屬性不用寫 synthesize 4.語法簡化 4.1 nsnumber nsnumber value value 12345 value 123.45f value 123.45 val...
OC學習小結之copy語法
乙個物件使用copy和mutablecopy方法可以建立物件的副本 copy 需要事先實現nscopying協議,建立的副本是不可變副本 如nsstring,nsarray,nsdictionary mutablecopy 需要先實現nsmutablecopying協議,建立的是可變副本 如nsmu...