如何将对象/值添加到 NSMutableArray 上的某个元素?

How to add object / value to a certain element on NSMutableArray?

我只知道addObject方法,就是将对象添加到数组中的下一个元素。我希望能够将对象添加/设置/更新到 NSMutableArray 的任意位置,例如:

arr[105] = @(true);
arr[709] = @(30);
arr[1010] = @"Hello world!";
NSLog (@"%@", arr[1010]);

我一直在尝试类似的方法,但下次我尝试检索该值时,它显示为 nil。这该怎么做?谢谢

编辑:我上次尝试时出现错误:index 1010 beyond bounds for empty array.

您在创建数组时指定了一个大小,指定的大小被视为“提示”;数组的实际大小仍然为 0。这意味着您不能在大于数组当前计数的索引处插入对象。例如,如果一个数组包含两个对象,其大小为 2,那么您可以在索引 0、1 或 2 处添加对象。索引 3 是非法的并且超出范围。

https://developer.apple.com/library/prerelease/ios/documentation/Cocoa/Reference/Foundation/Classes/NSMutableArray_Class/index.html

阅读更多内容

下面的方法用于用新对象替换索引处的现有对象

[self.arr replaceObjectAtIndex:<#(NSUInteger)#> withObject:<#(nonnull id)#>]

下面的方法用于在索引处插入新对象

[self.arr insertObject:<#(nonnull id)#> atIndex:<#(NSUInteger)#>]

例如:

如果对象在索引处已经可用并替换为新对象

[self.arrayBuyers replaceObjectAtIndex:1010 withObject:@"Hello world!"]

在索引

处添加新对象
[self.arr insertObject:1 atIndex:@"Hi"];