2013-06-19 3 views
0

Я была ниже структуры -Как объединить два двухмерных массивов строки в Java

{ 
     String[][] array = null; 
     array = getTable2C(Order order, v.get(i)); 
     return array; 
    } 

Теперь я хочу, чтобы добавить новый код, в котором я буду получать несколько 2-D массив строк & Я хочу, чтобы вернуться весь конкатенированный массив 2-D строк в конце метода.

String[][] array = null; 
    Vector v = getVectorFromSC(Order order); 

    for(int i=0;i<v.size();i++) 
    { 
     array = getTable2C(Order order, v.get(i)); 
     /* 
     . 
     . Some code to Concatenate multiple 2D array. 
     . Something like, allArray = array +allArray; 
     . 
     */ 

    } 
    return allArray; 

Как достичь этого? Я попытался преобразовать Array в Vector &, снова преобразовывая вектор в массив (toArray() метод Vector) Но он работает для одного размерного массива. Я не уверен, как использовать это для 2D-массива.

+0

Что вы подразумеваете под СЦЕПИТЬ? Каков формат вашего результата? – vikingsteve

+0

Что вы подразумеваете под конкатенированием 2-мерного массива? приведи пример! – tejas

+0

Я получаю 2D-массив в результате метода getTable2C(). Теперь, когда он находится в цикле, я получаю несколько 2D-массивов, я хочу объединить их все, а затем хочу вернуть объединенный 2D-массив. –

ответ

0

попробовать это: -

public String[][] yourMethod(){ 
String[][] array = new String[0][0]; 
    Vector v = getVectorFromSC(Order order); 

    for(int i=0;i<v.size();i++) 
    { 
     String[][] tempArray = getTable2C(Order order, v.get(i)); 

     array = concat(array,tempArray); 

    } 
    return allArray; 
} 

public String[][] concat(String[][] a, String[][] b) { 
       String[][] result = new String[a.length + b.length][]; 
       System.arraycopy(a, 0, result, 0, a.length); 
       System.arraycopy(b, 0, result, a.length, b.length); 
       return result; 
} 
+0

Спасибо @chetan! Это решило мою проблему !! –

0

Вы можете попробовать что-то вроде этого:

1->Vector<String[][]> allArray = new Vector<String[][]>(); //DEfine a Vector that can hold 2D array 
    2-> allArray.add(array); //Inside for loop keep adding each 2D array to vector 
    3-> return allArray //Returns a vector which element is 2D array 
Смежные вопросы