OC数组中的nil

来源:互联网 发布:博物馆文艺软件 编辑:程序博客网 时间:2024/06/05 09:24

在OC中 数组元素以nil结束


NSArray内部应该是通过链表实现,每增加一个元素就增加一个节点,每删除一个元素就删除一个节点。这也就是OC数组无需要预先申请空间的原因。nil就存在于最后一个节点,它的下一个节点的指针指向nil。

也就是nil是数组对象存储空间中,但不计算为数组的元素。
假如在数组中插入nil元素则系统会自动认为结束  后面的元素不计入数组内。
举例:

    NSArray *array = [NSArrayarrayWithObjects:@"1",@"2",nil,@"3",@"4",nil];

    NSLog(@"%@",array);

(

    1,

    2

)

原创粉丝点击