我有下面的类型对象数组
object[] myarray = new object[] { "1", "Success"};
我想在myarray的第一个位置插入字符串值是否有任何方法 要做到这个结果应该如下:
我想要下面的数组
object[] myarray = new object[] { "logFile","1", "Success"};
答案 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的末尾。