问题:要删除一个数组的第一个元素
假设有一个已经初始化并且已经有数据的可变数组:arr
思考下面两组代码有什么区别:
1.
id firstObject = [arr firstObject];
[arr removeObject:firstObject];
2.
[arr removeObjectAtIndex:0];
大多数情况这么用都没什么问题,但是有情况例外!!!
当数组中含有相同重复的对象的时候,假设第一种方法 firstObject在数组中就有多个重复的 则会把所有的firstObject都删了。而第二种方法不会。
所以如果想删数组的第一个元素一定要按照第二种种方法删除