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

Ios 如何向NSMutableArray上的某个元素添加对象/值?,ios,objective-c,nsmutablearray,Ios,Objective C,Nsmutablearray,我只知道addObject方法,即将object添加到数组中的下一个元素。我希望能够将/set/update对象添加到NSMutableArray的任意位置,例如: arr[105] = @(true); arr[709] = @(30); arr[1010] = @"Hello world!"; NSLog (@"%@", arr[1010]); 我一直在尝试类似的东西,但下一次尝试检索值时,它显示为nil。如何做到这一点?谢谢 编辑:上次我尝试时,它给了我一个错误:索引1010超出了空数组

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

arr[105] = @(true);
arr[709] = @(30);
arr[1010] = @"Hello world!";
NSLog (@"%@", arr[1010]);
我一直在尝试类似的东西,但下一次尝试检索值时,它显示为nil。如何做到这一点?谢谢


编辑:上次我尝试时,它给了我一个错误:索引1010超出了空数组的界限。

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

阅读更多

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

[self.arr replaceObjectAtIndex:<#(NSUInteger)#> withObject:<#(nonnull id)#>]
[self.arrayBuyers replaceObjectAtIndex:1010 withObject:@"Hello world!"]
在索引处添加新对象

[self.arr insertObject:1 atIndex:@"Hi"];

谢谢让我试试。同时,我已经更新了这个问题,这可能会为您理解这个问题提供更多的信息。是的,这个错误会给您带来错误,因为没有可用于添加/替换对象的数组索引。谢谢!为了解决这个问题,我在使用数组之前插入了所需的许多对象。我不确定这是否正确,但至少我可以继续前进。稍后我将对此进行优化。
[self.arr insertObject:1 atIndex:@"Hi"];