class changeArrary 
{
public static void main(String[] args) 
{
int array[][]={{22,18,36},{27,34,58},{12,51,32},{14,52,64}};
int brray[][]=new int[3][4];
System.out.println("圆形矩阵如下:");
for(int i = 0; i<array.length;i++){
for(int j = 0;j<array[i].length;j++){
System.out.print(array[i][j]+" ");
}
System.out.println();
}
System.out.println("_____________________________________________");
System.out.println(); changeArrary ch = new changeArrary();
changeArrary.change();


System.out.println("转置后的矩阵如下:");
for(int i = 0;i<brray.length;i++){
for(int j = 0;j<brray[i].length;j++){
System.out.print(brray[i][j]+" ");
}
System.out.println();
}
}
  public static void change(){
for(int i = 0;i<array.length;i++){
for(int j = 0;j<brray.length;j++){
brray[j][i]=array[i][j];
}
}
}
}
调用change()出错,求大神帮我解决

解决方案 »

  1.   

    array和brray没在作用域里面啊
    public static void change(int[][] array, int[][] brray){}改成这样试试,调用的时候把array和brray传进去
      

  2.   

    //这个方法不对,改成下面这样,便利一个给另一个赋值。 
    //至于楼上所说的传参,可以不用,因为在同一个类中,但是一般还是推荐传参数进来
     public static void change(){
    for(int i = 0;i<array.length;i++){
    for(int j = 0;j<array[i].length;j++){
    brray[j][i]=array[i][j];
    }
    }
    }
    }