我有一些代码需要将数组中的一个对象替换为另一个。现在的代码不会检查该对象是否已经被替换,而是只是继续替换它,这会导致问题吗?如果是这样,我应该检查数组是否已经包含对象而不是替换它是否存在?我正在使用的是..
[subArray replaceObjectAtIndex:col withObject:obj];
我正在使用ARC是有所作为的。
答案 0 :(得分:3)
replaceObjectAtIndex:
方法保留新对象,释放旧对象,并对支持NSMutableArray
数据的数组进行赋值。即使被分配的对象已经存储在同一位置的数组中,这些操作也不会导致内存问题。这些操作执行得非常快,因此在分配之前检查相等可能会浪费时间。