能运行,使说明存在一个正确的class,和编译不能通过没什么关系!
你应该用:b = max(array);

解决方案 »

  1.   

    你是对int的二维数组的定义不明,应该是int[][] 变量名;
    而不是你所用的那些
    改正如下:
    import java.io.*;
    public class HelloWorld{
    static int max(int[][] a){//此处改
    int x;
    int y;
    int max;
    max=a[0][0];
    for(x=0;x<=3;x++){
    for(y=0;y<3;y++){
    if(a[x][y]>max)
    max=a[x][y];
    }
    }
    return max;
        }public static void main(String args[]){
    int[][] array = new int[4][3];//此处改
    int i;
    int j;
    for(i=0;i<=3;i++){
    for(j=0;j<2;j++)
    array[i][j]=i+j;
    }
            int b;
            b = max(array);//此处改
    for(i=0;i<=3;i++){
    for(j=0;j<3;j++)
    System.out.println(array[i][j]);
        }
        System.out.println("最大值为:"+b);
    }
    }==============================
    在下所说,也许并非正确,请从建议的角度批判地吸收!
      

  2.   

    b = max(array)不需要后面用 array[4][3]array就是一个指向数组对象的指针,这才是函数 max需要的参数。
      

  3.   

    刚才所述有误,其实是不能运行的:)我弄错了,原来的class文件没有删掉,所以能运行。
    现在按照上面几位高手的方法是过了,都是可以的,谢谢!