码迷,mamicode.com
首页 > 移动开发 > 详细

ios:多用字面量语法

时间:2014-09-17 20:22:02      阅读:298      评论:0      收藏:0      [点我收藏+]

标签:io   os   使用   ar   2014   sp   cti   代码   on   

使用字面量语法可以缩减源代码长度,是其更为易读。

注意事项:用字面量语法创建数组时要注意,若数组元素对象中有nil,则会抛出异常。用字面量数组创建数组,其效果等于是先创建了一个数组,然后把方括号内得所有对象都加到这个数组中。

例如:

id obj1 = @"obj1";

id obj2 = nil;

id obj3 = @"obj3";

NSArray *arrayA = NSArray *arrayA = [NSArray arrayWithObjects:obj1, obj2, obj3, nil];

NSArray *arrayB = @[obj1, obj2, obj3];

arrayA能创建出来,但是arrayB会抛出异常。因为,arrayWithObjects方法会依次处理各个参数,直到发现nil为止,遇到对象为nil时,该方法会提前结束。然而arrayB在遇到对象为nil时,会抛出异常。这个微妙得差别,使用字面量语法更为安全。抛出异常令应用程序终止执行,这比创建好数组之后才发现元素个数少了要好。向数组中插入nil通常说明程序有错,而通过异常可以更快地发现这个错误。

在创建字典时(NSDictionary),字典中的对象和键值必须都是OC对象。所以用字面量就比用非字面量方便很多了。例如用字面量语法生成字典:

NSDictionary *dic1 = @{ @"timestamp" : @"2014-09-25 00:00:00", @"relateProfit" : @9, @"relateSevenPercent" : @1234 };

用非字面量语法生成字典:

NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys:@"2014-09-25 00:00:00", @"timestamp", [NSNumber numberWithFloat:9], @"relateProfit", [NSNumber numberWithFloat:1234], @"relateSevenPercent", nil];

要点:1.应该使用字面量语法来创建字符串、数值、数组、字典。与创建此类对象的常规方法相比,这么做更加简明扼要。

   2.应该通过取下标操作来访问数组下标或字典中得键所对应的元素。

     3.用字面量语法创建数组或字典时,若值中有nil,则会抛出异常。

 

ios:多用字面量语法

标签:io   os   使用   ar   2014   sp   cti   代码   on   

原文地址:http://www.cnblogs.com/code4appstyle/p/3977941.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!