2016-03-15 6 views
-1

Это мой 2-мерный массив:Используя 2-мерный массив объектов

String[][] theMaze = new String[row][column]; 

Как использовать его в этом методе?

public void ruteToX(String[][] theMaze){ 
    // call theMaze and process in this method 
} 
+0

Что должно быть внутри? –

+0

Планируете ли вы передать массив этому методу? –

+0

Да, mr. Mathew. это массив, заполненный значением в main. А чем можно назвать тот массив, который уже заполнен методом ruteToX? – Wisnu

ответ

1

Предполагая, что я понял ваш вопрос в правильном смысле.

Я покажу вам пример передачи массива методу ruteToX(...).

public class Example 
{ 

String[][] theMaze = new String[5][5]; 
public void ruteToX(String[][] theMaze) 
{ 
//call theMaze and process in this method 
} 

public static void main(....) 
{ 
    Example ob=new Example(); 
    ob.ruteToX(ob.theMaze); 
    //passed the value of reference or the pointer to the function ruteToX(...) 
} 
} 

Как прошло?

Когда вы передаете массив, передается значение pointer or reference в памяти, что означает, что если вы внесете какие-либо изменения в массив параметров в методе, фактический массив также столкнется с теми же изменениями (поскольку они одинаковы такая же ссылка).

-3

При переходе в массиве, в предыдущем методе (независимо от того работает до того «ruteToX») вызвать метод и передать массив в использовании только имя переменной.

public void previousMethod(){ 
    ruteToX(theMaze); 
}  

public void ruteToX(String[][] theMaze){ 
    // call theMaze and process in this method 
} 

EDIT: Кроме того, один раз в методе вы можете использовать массив, как есть, или создать новый массив, равный исходный массив.

public void ruteToX(String[][] theMaze){ 
     String[][] secondMaze = theMaze; 
    } 
+0

Я не согласен с «созданием нового массива, равным исходному массиву». –

+0

@MathewsMathai согласился, что это не очень хорошее решение в хорошем количестве примеров, однако я хотел предложить несколько вариантов. – AnthonyGordon

+0

Речь идет не о решении. 'String [] [] secondMaze = theMaze;' не создает новый массив. новый объект массива, который вы создали, имеет ту же ссылку, что и вы используете '='. –

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

  • Нет связанных вопросов^_^