Java 尝试返回二维数组时出错

Java 尝试返回二维数组时出错,java,return,character-arrays,Java,Return,Character Arrays,尝试从Java中的类返回2D数组。我们试图用文本文件中的字符填充二维数组,使用两个for循环。填充数组很容易,但将其返回到主类是我们不断遇到错误的地方。在返回行上获取错误。这是有问题的班级 import java.io.*; import java.lang.*; import java.util.*; public class ReadMe { private Scanner lev; char[][] grid1 = new char[576][1024]; p

尝试从Java中的类返回2D数组。我们试图用文本文件中的字符填充二维数组,使用两个for循环。填充数组很容易,但将其返回到主类是我们不断遇到错误的地方。在返回行上获取错误。这是有问题的班级

import java.io.*;
import java.lang.*;
import java.util.*;

public class ReadMe {

    private Scanner lev;
    char[][] grid1 = new char[576][1024];

    public void openfile(){
        try{
            lev = new Scanner(new File("D:\\Jeeeva\\Workspace\\GIANT PROJECT NAME GOES HERE\\src\\level.txt")); //opens file
        }
        catch(Exception e){
            System.out.println("Error: Level file not found");
        }
    }

    public char[][] readfile(){ //may need some parameters

        while (lev.hasNext()){

        for (int s=0; s<576; s++){
            String line = new String(lev.next());

            for (int d=0; d<1024; d++){

                grid1[s][d] = line.charAt(d);

            }
        }


        }

        return grid1[][];
    }



    public void closefile(){ //closes file after its done reading
        lev.close();
    }

}
非常绿色,如果这是一个noob问题,很抱歉

改变你的想法

import java.io.*;
import java.lang.*;
import java.util.*;

public class ReadMe {

    private Scanner lev;
    char[][] grid1 = new char[576][1024];

    public void openfile(){
        try{
            lev = new Scanner(new File("D:\\Jeeeva\\Workspace\\GIANT PROJECT NAME GOES HERE\\src\\level.txt")); //opens file
        }
        catch(Exception e){
            System.out.println("Error: Level file not found");
        }
    }

    public char[][] readfile(){ //may need some parameters

        while (lev.hasNext()){

        for (int s=0; s<576; s++){
            String line = new String(lev.next());

            for (int d=0; d<1024; d++){

                grid1[s][d] = line.charAt(d);

            }
        }


        }

        return grid1[][];
    }



    public void closefile(){ //closes file after its done reading
        lev.close();
    }

}
return grid1[][]; //invalid syntax
为了


这是无效的语法:

return grid1[][];
试一试


在实例化一个数组之后,当您传递并返回它时,只需要通过它的名称来引用它。因此,您所需要的是:

return grid1;

返回grid1[]
必须是
返回grid1。投票结束是一个打字错误。
return grid1;
return grid1;