直接上代码:
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 了,遍历的时候仅能遍历出第一个元素,
后面的元素都将被无视~