OC语言 - 语法糖

语法糖

1 - 语法糖也译为糖衣语法、笑笑语法,指计算机语言中添加的某种语法。这种语法对语言的功能并没有影响,但是更方便程序员使

注: OC 中的语法糖创建的对象是通过便利构造的,且不可变

2 - 代码示例:如何使用语法糖

 1     // NSNumber
 2     NSNumber *value01;
 3     value01 = @12345;     // 同 [NSNumber numberWithInt:18];
 4     value01 = @123.45f;
 5     value01 = @123.45;    // 同 [NSNumber numberWithFloat:16.7];
 6     value01 = @YES;       // 同 [NSNumber numberWithBool:YES];
 7 
 8     
 9     //------------------------------------------------------
10     // 数组
11     NSArray *array1 = [NSArray arrayWithObjects:@"111",@"222",@"333",nil];
12     // 糖语法
13     NSArray *array01 = @[@"111",@"222",@"333"];
14     // 获取元素
15     [array1 objectAtIndex:1];
16     //
17     array01[1];
18 
19     NSMutableArray *array2 = [NSMutableArray arrayWithCapacity:1];
20     //
21     NSMutableArray *array02 = [@[@"111",@"222"] mutableCopy];
22     // 语法糖创建的是一个不可变的数组,如果想要变成可变的,需使用 mutableCopy
23     
24 
25     //------------------------------------------------------
26     // 字典
27     NSDictionary *dic01 = @{@"name":@"Hazell",@"sex":@"female",@"age":@"18"};
28     dic01[@"name"]; // 根据 key 获取 value;同下行代码
29     [dic01 objectForKey:@"name"];
30 
31     NSMutableDictionary *dic = @{@"name":@"Hazell"}.mutableCopy;
32     [dic setObject:@"female" forKey:@"18"];
33     dic[@"female"] = @"18";
34     // 同下行代码
35     [dic setObject:@"female" forKey:@"18"];

小结

1 - 使用糖衣语法构建字典时,如果有数据交互的时候数据为空,程序会 crash

2 - 小提示:打一个 @ 键后,按 esc 键则显示语法糖提示

posted on 2018-09-10 20:44  低头捡石頭  阅读(95)  评论(0编辑  收藏  举报

导航