Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用另一个类从Java中的2D数组打印用户输入_Java_Arrays_Compiler Errors - Fatal编程技术网

使用另一个类从Java中的2D数组打印用户输入

使用另一个类从Java中的2D数组打印用户输入,java,arrays,compiler-errors,Java,Arrays,Compiler Errors,我试图制作一个简单的棋盘,向用户询问棋盘上的坐标,例如a5或h7。当用户回答这个问题时,系统会提示用户输入一个国际象棋棋子(目前可以是任何字符串,因为我不想检查它是否是有效棋子),然后将其存储在该坐标中。理想情况下,在将来,当用户输入“完成”时,我希望这样做,然后程序将停止,下一个类将显示用户输入的数组的所有值,例如: "Enter a coordinate: a5" "Enter a piece: Lemon" "Enter a coordin

我试图制作一个简单的棋盘,向用户询问棋盘上的坐标,例如a5或h7。当用户回答这个问题时,系统会提示用户输入一个国际象棋棋子(目前可以是任何字符串,因为我不想检查它是否是有效棋子),然后将其存储在该坐标中。理想情况下,在将来,当用户输入“完成”时,我希望这样做,然后程序将停止,下一个类将显示用户输入的数组的所有值,例如:

"Enter a coordinate: a5"
"Enter a piece: Lemon"
"Enter a coordinate: h8"
"Enter a piece: Queen"
"Enter a coordinate: Done"
>User is then prompted with, for example:
"You have entered Lemon at a5"
etc
这将是理想的输出,但任何帮助都将不胜感激。我现在的代码是:

import java.util.Arrays;
import java.util.Scanner;
public class ChessBoard
{
    public static void main(String[] args)
    {
        char rows = 'a';
        String spot;
        Scanner scanner = new Scanner(System.in);
        String[][] grid = new String [8][8];

        for(int i = 0; i < grid.length; i++, rows++)
        {
            for(int col = 0; col < grid[i].length; col++);
            String input = null;              // will be changed to a valid position
            boolean validCoordinate = false;   // will be true if position is valid
            while ( ! validCoordinate) {
                System.out.println("Enter a coordinate (for example, a5): ");
                input = scanner.next();
                validCoordinate = input.matches("[a-g][1-8]");
            };
            // now we now that the input is valid
            int row = input.charAt(0) - 'a';
            int col = input.charAt(1) - '1';
            String temp = row + col + " - ";
            System.out.println("Insert your piece:");
            input = scanner.next();
            grid[row][col] = temp + input;
        }
        String getGrid() {
            return this.grid;
        System.out.println(Arrays.deepToString(grid));
        }
    }

}
public class printArray
{
    System.out.println(getGrid() + "");
}
导入java.util.array;
导入java.util.Scanner;
公共类棋盘
{
公共静态void main(字符串[]args)
{
字符行='a';
弦斑;
扫描仪=新的扫描仪(System.in);
字符串[][]网格=新字符串[8][8];
对于(int i=0;i
因此,我尝试返回数组,然后在循环完成时打印它,但是我得到编译器错误,在getGrid之后应该是“;”,在“System.out.println(getGrid()+);”行中应该是标识符