字面
现代 Objective C 提供了减少初始化某些常见类型所需的代码量的方法。这种新方法与使用常量字符串初始化 NSString 对象的方式非常相似。
NSNumber
旧方式:
NSNumber *number = [NSNumber numberWithInt:25];
现代方式:
NSNumber *number = @25;
注意:你还可以使用 @YES
,@NO
或 @(someBoolValue)
在 NSNumber
对象中存储 BOOL
值;
NSArray
旧方式:
NSArray *array = [[NSArray alloc] initWithObjects:@"One", @"Two", [NSNumber numberWithInt:3], @"Four", nil];
现代方式:
NSArray *array = @[@"One", @"Two", @3, @"Four"];
NSDictionary
旧方式:
NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys: array, @"Object", [NSNumber numberWithFloat:1.5], @"Value", @"ObjectiveC", @"Language", nil];
现代方式:
NSDictionary *dictionary = @{@"Object": array, @"Value": @1.5, @"Language": @"ObjectiveC"};