NSMutableArray 特性

直接上代码:

NSString* str0  = @"123";
NSString* str1  = @"234";
NSString* str2  = @"456";
NSMutableArray* array= [NSMutableArray arrayWithObjects:str0, nil, str1, str2, nil];
[array addObject:nil];
for (NSObject* item in array) {
    BYLog(@"%@",item);
}

说明:

上面这一段代码是能够正常通过编译的,

也就是说,在初始化的时候将 nil 作为一个元素,addObject 添加 nil,都没有问题!

但是存在问题!

类似 c 里面的字符串是以 ‘\0’ 做结束标志,

NSMutableArray 里面也是有结束标志的,

这个标志就是 nil。

如上面这段代码,

第二个元素就是nil 了,遍历的时候仅能遍历出第一个元素,

后面的元素都将被无视~

原文地址:https://www.cnblogs.com/java20130723/p/3212062.html