3 回答

TA貢獻1887條經(jīng)驗 獲得超5個贊
在C#3.0中,可以使用LINQ的Concat方法輕松完成此操作:
int[] front = { 1, 2, 3, 4 };
int[] back = { 5, 6, 7, 8 };
int[] combined = front.Concat(back).ToArray();
在C#2.0中,您沒有直接的方法,但是Array.Copy可能是最好的解決方案:
int[] front = { 1, 2, 3, 4 };
int[] back = { 5, 6, 7, 8 };
int[] combined = new int[front.Length + back.Length];
Array.Copy(front, combined, front.Length);
Array.Copy(back, 0, combined, front.Length, back.Length);
這可以輕松地用于實現(xiàn)您自己的Concat。

TA貢獻1785條經(jīng)驗 獲得超8個贊
使用LINQ:
var arr1 = new[] { 1, 2, 3, 4, 5 };
var arr2 = new[] { 6, 7, 8, 9, 0 };
var arr = arr1.Union(arr2).ToArray();
請記住,這將刪除重復(fù)項。如果要保留重復(fù)項,請使用Concat。

TA貢獻2080條經(jīng)驗 獲得超4個贊
如果可以操縱其中一個數(shù)組,則可以在執(zhí)行復(fù)制之前調(diào)整其大?。?/p>
T[] array1 = getOneArray();
T[] array2 = getAnotherArray();
int array1OriginalLength = array1.Length;
Array.Resize<T>(ref array1, array1OriginalLength + array2.Length);
Array.Copy(array2, 0, array1, array1OriginalLength, array2.Length);
否則,您可以制作一個新數(shù)組
T[] array1 = getOneArray();
T[] array2 = getAnotherArray();
T[] newArray = new T[array1.Length + array2.Length];
Array.Copy(array1, newArray, array1.Length);
Array.Copy(array2, 0, newArray, array1.Length, array2.Length);
- 3 回答
- 1 關(guān)注
- 956 瀏覽
添加回答
舉報