Objective-c 语法过于繁杂,Foundation框架中的 NSString、NSNumber、NSArray、NSDictionary 可以通过字面量语法来创建。
例如:
NSString *str =@ "hello world";
这种创建方式,比常见的alloc 以及 init 方法来创建字符串 更容易读,而且编码更短。也可以用字面量语法来声明 NSNumber NSArray NSDictionary。
一 NSNumber
NSNumber 可用处理多种类型,整数,浮点数,布尔值。常用创建方式:
NSNumber *number = [NSNumber numberWithInt:3];
字面量方式:
NSNumber *number = @3;
可见字面量语法更为简洁,能够以NSNumber 实力表示的所有数据类型都可使用该语法。
NSNumber *intNumber = @3;
NSNumber *floatNumber = @3.5f;
NSNumber *doubleNumber = @3.14159f;
NSNumber *boolNumber = @YES;
NSNumber *charNumber = @'a';
二 数组 NSArray
字面量语法创建 数组
NSArray * fruitArray = @[@"apple",@"banana"];
数组可以通过下标访问
NSString *fruit = fruitArray[0];
注意:用字面量语法创建数组时,数组中的元素如果为nil ,则会抛出异常。
三 字典 NSDictionary
字典 是中映射数据结构,可以向其中添加键值对。OC代码创建如下:
NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:@"guom",@"name", nil];
系统的创建方式为 值:键,和通常顺序相反,一般是把 值映射到键上。
NSDictionary *dictionary = @{@"name":@"guom"};
数组可以通过下标访问
NSString *name = dictionary[@"name"];
这种写法更简明,而且易读。同样,字典和数组一样,如果在创建了nil值,则会抛出异常
注意:字面量语法出了字符串以外,所创建出来的对象必须属性Foundation框架