美文网首页
5. 字面量语法创建可变数组

5. 字面量语法创建可变数组

作者: 海盗军长 | 来源:发表于2018-07-10 12:46 被阅读0次

创建数组

NSArray *array = @[@“Jim”,@“Kobe”,@"Baby" ];

创建可变数组

NSMutableArray *mutableArray = [ @[@“Jim”,@“Kobe”,@"Baby" ] mutableCopy];

一个注意的点:
使用字面量语法和常规方法的差别

id object1 = ...;
id object2 = ...;
id object3 = ...;

NSArray *arrayA = [NSArray arrayWithObjects: object1, object2, object3, nil];
NSArray *arrayB = [object1, object2, object3];

如果 object1 与 object3 都指向了有效的 Objective-C 对象,而 object2 是 nil ,那么会出现什么情况呢?
按字面量语法创建数组 arrayB 时会抛出异常。
arrayA 虽然能创建出来,但是其中却只含有 object1 一个对象。
** 原因在于, “arrayWithObjects:” 方法会依次处理各个参数,直到发现 nil 为止, 由于 obect2 为nil, 所以该方法会提前结束。 **

相关文章

网友评论

      本文标题:5. 字面量语法创建可变数组

      本文链接:https://www.haomeiwen.com/subject/vayfpftx.html