Objective-C代碼簡寫
阿新 • • 發佈:2019-01-03
字典 iter har rcu 查找 bug turn 特性 很多
NSNumber
所有的[NSNumber numberWith…:]方法都可以簡寫了:- [NSNumber numberWithChar:‘X’] 簡寫為 @‘X’;
- [NSNumber numberWithInt:12345] 簡寫為 @12345
- [NSNumber numberWithUnsignedLong:12345ul] 簡寫為 @12345ul
- [NSNumber numberWithLongLong:12345ll] 簡寫為 @12345ll
- [NSNumber numberWithFloat:123.45f] 簡寫為 @123.45f
- [NSNumber numberWithDouble:123.45] 簡寫為 @123.45
- [NSNumber numberWithBool:YES] 簡寫為 @YES
NSArray
部分NSArray方法得到了簡化:- [NSArray array] 簡寫為 @[]
- [NSArray arrayWithObject:a] 簡寫為 @[ a ]
- [NSArray arrayWithObjects:a, b, c, nil] 簡寫為 @[ a, b, c ]
NSDictionary
既然數組都簡化了,字典也沒跑兒,還是和Perl啊Python啊Ruby啊很相似,意料之中的寫法:- [NSDictionary dictionary] 簡寫為 @{}
- [NSDictionary dictionaryWithObject:o1 forKey:k1] 簡寫為 @{ k1 : o1 }
- [NSDictionary dictionaryWithObjectsAndKeys:o1, k1, o2, k2, o3, k3, nil] 簡寫為 @{ k1 : o1, k2 : o2, k3 : o3 }
下標
其實使用這些簡寫的一大目的是可以使用下標來訪問元素:- [_array objectAtIndex:idx] 簡寫為 _array[idx];
- [_array replaceObjectAtIndex:idx withObject:newObj] 簡寫為 _array[idx] = newObj
- [_dic objectForKey:key] 簡寫為 _dic[key]
- [_dic setObject:object forKey:key] 簡寫為 _dic[key] = newObject
Objective-C代碼簡寫