Java Tic-Tac-Toe中的角色

Java Tic-Tac-Toe中的角色,java,Java,我现在学习Java已经一周了,我正在做一个井字游戏。几乎所有的东西都是完美的,除了我不知道如何把1和2变成X和O。我的教授告诉我们,我们不能改变主要的方法。0表示空间,1表示X,2表示O public static void printBoard(int[][] board) { for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { if (j == 2) {

我现在学习Java已经一周了,我正在做一个井字游戏。几乎所有的东西都是完美的,除了我不知道如何把1和2变成X和O。我的教授告诉我们,我们不能改变主要的方法。0表示空间,1表示X,2表示O

public static void printBoard(int[][] board) {

    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            if (j == 2) {
                System.out.print(board[i][j] );
            } else {
                System.out.print(board[i][j] +  "  |");
            }
        }   
    }
publicstaticvoid打印板(int[]board){
对于(int i=0;i<3;i++){
对于(int j=0;j<3;j++){
如果(j==2){
系统输出打印(板[i][j]);
}否则{
系统输出打印(板[i][j]+“|”);
}
}   
}

}一种可能性是创建一种方法,将数字转换为它所表示的字符,如下所示:

public static char toText(int num) {
    switch (num) {
        case 0: return ' ';
        case 1: return 'X';
        case 2: return 'O';
        default: return '?';
    }
}
然后,您可以在打印电路板时使用此方法。这将避免必须改变您在董事会内部的代表方式:

for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 3; j++) {
        if (j == 2) {
            System.out.print(toText(board[i][j]) );
        } else {
            System.out.print(toText(board[i][j]) +  "  |");
        }
}
for(int i=0;i<3;i++){
对于(int j=0;j<3;j++){
如果(j==2){
系统输出打印(toText(板[i][j]);
}否则{
系统输出打印(toText(板[i][j])+“|”号;
}
}

一种可能性是创建一种方法,将数字转换为它所表示的字符,如下所示:

public static char toText(int num) {
    switch (num) {
        case 0: return ' ';
        case 1: return 'X';
        case 2: return 'O';
        default: return '?';
    }
}
然后,您可以在打印电路板时使用此方法。这将避免必须更改内部表示电路板的方式:

for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 3; j++) {
        if (j == 2) {
            System.out.print(toText(board[i][j]) );
        } else {
            System.out.print(toText(board[i][j]) +  "  |");
        }
}
for(int i=0;i<3;i++){
对于(int j=0;j<3;j++){
如果(j==2){
系统输出打印(toText(板[i][j]);
}否则{
系统输出打印(toText(板[i][j])+“|”号;
}
}

查看您的
打印板方法。查看它是否负责类内部数据的可视化表示。这意味着,您存储数据的方式(1和0、蝙蝠侠标志以及您想要的任何其他内容),您只需修改
printBoard
即可查看用户看到的视觉输出中的更改。具体来说,请查看
print
方法。它将打印一个数值。那么,为什么不将数值指定给变量,检查它是
1
还是
0
,然后根据需要打印一些字符呢这是一个很好的起点。查看你的
printBoard
方法。看看它是否负责类内部数据的可视化表示。这意味着,你存储数据的方式(1和0、蝙蝠侠符号以及你想要的任何东西),您只需修改
printBoard
即可查看用户看到的视觉输出中的更改。具体来说,请查看
print
方法。它将打印一个数值。那么,为什么不将数值指定给变量,检查它是
1
还是
0
,然后根据需要打印一些字符呢这是一个好的开始。