2012-02-17 3 views
3

У меня есть 2 массива 1d и им пытаются заполнить их в один 2-мерный массив в JAVA.заселяющий массив 2d с двумя массивами 1d в java

Например:

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++) { 
     ??? 
    } 
} 

Im рода застрял оттуда ...

ответ

9

2D массив представляет собой массив массивов , Так почему бы вам не попробовать это?

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

hahaha. это так неловко! Спасибо. x – Buki

+0

:) Почему люди дают другие ответы. +1 для этого. –

1

Вы должны вернуться строк и столбцов индексов

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

ок. что входит во второй цикл? 'result [] []' – Buki

2

Попробуйте это:

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

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

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

спасибо, но я использовал массив не arraylist. :) – Buki

+1

arraylist - это всего лишь временный контейнер для массивов. вы можете добавить к массиву несколько массивов разных размеров и получить из него соответствующий 2D-массив, используя toArray(). , но ответ экспортера явно проще, если он соответствует вашим потребностям. –

Смежные вопросы