如何在数组中的其他两个之间插入项目

Mat*_*osa 0 .net c# arrays swap object

我有以下内容object[] array:

array[0] = obj_1;
array[1] = obj_2;
array[2] = obj_3;
array[3] = NULL;
array[4] = NULL;
Run Code Online (Sandbox Code Playgroud)

我需要在array[1]和之间插入另一个元素array[2]:

array[0] = obj_1;
array[1] = obj_2;
array[2] = obj_New;
array[3] = obj_3;
array[4] = NULL;
Run Code Online (Sandbox Code Playgroud)

List在有人建议之前我不能使用.我怎么能这样做?

Til*_*lak 5

没有直接的方法.您需要先移动元素,然后将值设置为所需的索引.

下面是示例代码段(没有任何数组索引检查)

void InsertItem(object[] array, int index, object val)
{
  for(int i=index;i<array.Length;i++)
  {
     array[i] = array[i-1];
  }
  array[index] = val;

}
Run Code Online (Sandbox Code Playgroud)

请注意,一旦创建的数组被分配了连续的位置,并且具有固定的大小.他们不能随意移动.

如果你需要各种这样的操作,我会建议链表数据结构.