如何在数组之间插入对象?

时间:2013-11-15 05:03:15

标签: ios objective-c arrays nsmutablearray

我想在数组之间插入一个对象。

例如;

 NSMutableArray *array = [[NSMutableArray alloc]init];
 [array addObject:@"1"];
 [array addObject:@"3"];
 [array addObject:@"4"];
 [array addObject:@"5"];

 NSLog@"array is - %@", array);

输出将是

  

数组是 - {1,3,4,5}

但是现在我想在这个数组之间添加另一个对象为“2”,并希望输出像这样;

  

数组是 - {1,2,3,4,5}

我该怎么做?

我已搜索但无法找到解决方案。

请帮帮我。

感谢。

7 个答案:

答案 0 :(得分:4)

[array insertObject:@"2" atIndex:1];

答案 1 :(得分:2)

NSMutableArray *array = [[NSMutableArray alloc]init];
[array addObject:@"1"];
[array addObject:@"3"];
[array addObject:@"4"];
[array addObject:@"5"];

NSLog@"array is - %@", array);
[array addObject:@"2"];
[array sortUsingSelector:@selector(compare:)];
NSLog@"array is - %@", array);

答案 2 :(得分:2)

在Array Like

中添加对象有多种方法
  1. 如果要从数组中添加对象

    NSMutableArray *array = [[NSMutableArray alloc]initWithArray:sourceArray];
    [array addObjectsFromArray:sourceArray];
    
  2. 如果您只想添加单个对象

    [array addObject:object];
    
  3. 如果您想添加一些自定义索引

    [array insertObject:object  atIndex:5];
    
  4. 如果要通过替换其他对象来添加

    [array replaceObjectAtIndex:5 withObject:object];
    

    是的,我们只能添加或删除数组,当且仅当它是Mutable时。

答案 3 :(得分:1)

[arrMutableArray insertObject:@"2" atIndex:1];

答案 4 :(得分:1)

数组的方法名称为

- (void)insertObjects:(NSArray *)objects atIndexes:(NSIndexSet *)indexes

使用像

这样的
[myArrayName insertObject:@"My Object" atIndex:IndexNumber]; // Here put your object with number of index as you want.

说明

  

将提供的数组中的对象插入到指定索引处的接收数组中。

     

参数

     

=>对象
  要插入接收阵列的对象数组    =>索引
  应插入对象中的对象的索引。索引中的位置数必须等于对象的数量。有关更多详细信息,请参阅讨论。

     

<强>讨论
  在先前插入之后,对象中的每个对象依次插入到索引中指定的相应位置的接收数组中。该实现在概念上类似于以下示例中所示。

以上解释取自Apple's official documents.

答案 5 :(得分:0)

您可以使用array insertobject属性。

只需提及要插入的objectatIndex。

您可以尝试以下内容。

 [yourarray insertObject:@"Give what you want to add" atIndex:1];

答案 6 :(得分:0)

在Swift中

var someInts = [1,2,4,5]
var someVar = someInts
print(someVar)

O / P:[1, 2, 4, 5]

someInts.insert(3, atIndex: 2)
var append = someInts
print(append)

O / P:[1, 2, 3, 4, 5]