-1

这是我的二维数组:

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

如何在这种方法中使用它?

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

2 回答 2

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在内存中的值被传递,这意味着如果您对方法中的参数数组进行任何更改,实际数组也将面临相同的更改(因为它们是相同的引用)。

于 2016-03-15T15:47:19.717 回答
-3

传入数组时,在前一个方法(无论在“ruteToX”之前运行的任何方法)调用该方法并仅使用变量名传入数组。

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

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

编辑:此外,在该方法中,您可以按原样使用数组,也可以创建一个与原始数组相等的新数组。

public void ruteToX(String[][] theMaze){
        String[][] secondMaze = theMaze; 
    }
于 2016-03-15T15:45:26.523 回答