2012-02-17 147 views
3

我有2個1d數組,並試圖將它們填充到JAVA中的單個2d數組中。用java中的兩個1d數組填充2d數組

例如:

x[] = {2,5,7,9} 
y[] = {11,22,33,44} 

結果應該然後就:

result[][] = {{2,5,7,9}, {11,22,33,44}} 

我怎麼去呢?目前,我有這樣的事情:

for(int row = 0; row < 2; row++) { 
    for(int col = 0; col == y.length; col++) { 
     ??? 
    } 
} 

林之類的卡從那裏......

回答

9

二維數組是數組的數組。那麼你爲什麼不嘗試這個?

int result[][] = {x,y}; 

,並確保它是如此簡單和工程,測試:

for(int i=0; i<result.length; i++) 
{ 
    for(int j=0; j<result[0].length; j++) 
     System.out.print(result[i][j]+ " "); 
    System.out.println(); 
} 
+0

哈哈哈。這太尷尬了!謝謝。 x – Buki 2012-02-17 07:36:01

+0

:)爲什麼人們會給出其他答案。 +1這個。 – 2012-02-17 07:38:33

1

你要恢復的行和列索引

for(int row = 0; row < 2; row++) 
{ 
    for(int col = 0; col = y.length; col++) 
    { 
     .... 
    } 
} 
+0

確定。第二個循環裏面有什麼? '結果[] []' – Buki 2012-02-17 07:27:58

2

試試這個:

ArrayList<Integer[]> tempList = new ArrayList<Integer[]>(); 

tempList.add(x); 
tempList.add(y); 

Integer result[][] = new Integer[tempList.size()][]; 
result = tempList.toArray(tempList); 
+0

謝謝,但我使用的不是數組列表。 :) – Buki 2012-02-17 07:37:35

+1

arraylist只是一個數組的臨時容器。您可以將多個不同大小的數組添加到數組列表中,然後使用toArray()從數組中獲取相應的2D數組。 但是驅逐者的答案顯然更簡單,如果它適合您的需求。 – 2012-02-17 07:58:14