NSMutableArray交换对象

时间:2017-09-18 09:36:19

标签: objective-c arrays

我想在NSMutableArray中交换对象。我用一种正常的方式来交换:


NSMutableArray* arr = ...; //- really means mutable; //- or converted from [NSArray mutableCopy]

Item* item0 = arr[0];
Item* item1 = arr[1];
Item* bk;

bk = item0;
item0 = item1;
item1 = bk;

上面的代码不起作用,数组仍然相同。我知道解决方案是使用:


[arr exchangeObjectAtIndex:0 withObjectAtIndex:1];

这里的问题是为什么我的代码不起作用???感谢。

抱歉,我的代码是正确的100%。所以我们可以使用我的代码或Apple代码。感谢

1 个答案:

答案 0 :(得分:0)

您刚刚交换了局部变量中的位置,而不是实际数组中的位置。指针在本地上下文中指向的内容已经更改,但数组的内容仍然相同。