我需要有关如何开始“玩”游戏的帮助,例如如果用户输入 1-9 中的任何数字,该数字将被“X”或“O”替换。
这是迄今为止我的代码:
import java.util.Scanner;
public class TicTacToe {
public static char[][] board = new char[3][3];
public static void main(String[] args){
Scanner kb = new Scanner(System.in);
Player player1 = new Player("John");
Player player2 = new Player("Jill");
initBoard();
int turn = 1;
int choice = 0;
while(choice != -1){
printBoard();
Player currentPlayer = player1;
if(turn % 2 == 0){
currentPlayer = player2;
}
System.out.print(currentPlayer + ", pick a box: ");
if(choice == 1){
board[0][0] = 'X';
}
turn++;
choice = kb.nextInt();
}
}
public static void initBoard(){
for(int r = 0; r < board.length; r++){
for(int c = 0; c < board[r].length; c++){
board[r][c] = (char)((r*3)+(c+1)+48);
}
}
}
public static void printBoard(){
for(int r = 0; r < board.length; r++){
for(int c = 0; c < board[r].length; c++){
System.out.print(board[r][c]+" ");
}
System.out.println();
}
}
}
class Player{
String name;
int wins = 0;
int losses = 0;
int draws = 0;
public Player(String s){
name = s;
}
public String toString(){
return name;
}
}
注意:我不是要求任何人帮我完成作业,我只是需要一些关于如何放置“X”和“O”的提示,并检查其中一个板是否已经有“X”或“O”。
最佳答案
我想您是在问如何将 1-9 转换为矩阵索引。
在这种情况下,如果你的矩阵 `
|0|1|2| -----> j - 列
|1|2|3| 0
|4|5|6| 1
|7|8|9| 2
`
您可以找到允许您将数字转换为索引的模式。
i = (输入 - 1)/3;
j = (输入 - 1) % 3;
关于java - Java 井字游戏程序设计第 1 级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53638648/