2015-05-05 136 views
2

可以說我有一個結合2份陣列1

int[] x = new int[8] {1,2,3,4,5,6,7,8}; 
int[] y = new int[8] {8,7,6,5,4,3,2,1}; 

,我想新陣列與該3TH和y的第四​​元件+ X數組

int[] xy = new int[10]; 

是有辦法做這樣的事情:XY = Y [2] + Y [3] + X,所以我會變成:

xy = {6,5,1,2,3,4,5,6,7,8}; 

我想這樣的事情應該工作,但它不

Array.Copy(y, 0, x1, 2, 2); 
Array.Copy(x, 2, x1, 0, 8); 

回答

4

如果你開始索引和結束索引彼此或1分離沿,那麼你可以這樣做:

int[] xy = y.Skip(2).Take(2).Concat(x).ToArray(); 

記住數組索引是基於0的。

如果您有特定的索引,例如第3個和第7個,則使用@Blorgbeard answer

3

你可以這樣說:

var xy = new [] { y[2], y[3] }.Concat(x).ToArray();