将字符串值插入对象数组

时间:2017-07-26 09:57:54

标签: c# arrays

我有下面的类型对象数组

object[] myarray = new object[] { "1", "Success"};

我想在myarray的第一个位置插入字符串值是否有任何方法 要做到这个结果应该如下:

我想要下面的数组

object[] myarray = new object[] { "logFile","1", "Success"};

2 个答案:

答案 0 :(得分:3)

如果你需要坚持阵列:

myarray = new object[]{"logFile"}.Concat(myarray).ToArray();

经典的非LINQ(和最有效)方法是使用Array.Copy

var newArray = new object[myarray.Length + 1];
newArray[0] = "logFile";
Array.Copy(myarray, 0, newArray, 1, myarray.Length);
// myarray = newArray;

答案 1 :(得分:1)

您可以切换到可以动态增长的List<string>

  List<string> myArray= new List<string> { "1", "Success"};

并使用List.Insert

myArray.Insert(0,"LogFile"); 

从MSDN如何List.Insert工作

如果Count已经等于Capacity,则通过自动重新分配内部数组来增加List的容量,并在添加新元素之前将现有元素复制到新数组。 如果index等于Count,则将item添加到List的末尾。