NSMutableArray removeObjectAtIndex

5
如果我有一个包含10个对象的NSMutableArray
我运行下面这行代码
[tempArray removeObjectAtIndex:0];

那么

[tempArray count] 应该返回9

但是整个数组是否向上移动

索引1的对象移动到索引0
索引2的对象移动到索引1
...
索引9的对象移动到索引8

还是索引0 = nil?

3个回答

7
NSMutableArray文档中得知:

为填补空缺,超出索引的所有元素都将通过将其索引减1来移动。


这是正确的,但是这是由iOS完成的还是我们需要手动编写一个方法来完成呢?(对不起,问题有点愚蠢) - Supertecnoboff

2

该数组将从被删除的索引右侧将所有对象向下移动1。索引0将是索引1中的内容,以此类推。


0

removeObjectAtIndex 将索引向下移动

insertObjectAtIndex 将索引向上移动

addObject 在末尾添加对象,因此不会有移动


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接