生成带棋盘的五子棋代码 java
时间: 2023-05-23 11:05:26 浏览: 55
我可以为您生成带棋盘的五子棋代码 Java,以下是一个示例:
```
public class GobangBoard {
private final int ROWS = 15;
private final int COLS = 15;
private int[][] board; // 棋盘数组,0代表空,1代表黑棋,2代表白棋
public GobangBoard() {
board = new int[ROWS][COLS]; // 初始化空棋盘
}
public void printBoard() {
System.out.println(" 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15");
for (int i = 0; i < ROWS; i++) {
System.out.print((i + 1) + " ");
for (int j = 0; j < COLS; j++) {
if (board[i][j] == 0) {
System.out.print("+ ");
} else if (board[i][j] == 1) {
System.out.print("● ");
} else if (board[i][j] == 2) {
System.out.print("○ ");
}
}
System.out.println();
}
}
public void makeMove(int row, int col, int player) throws Exception {
if (row < 0 || col < 0 || row >= ROWS || col >= COLS) {
throw new Exception("Invalid move: row or col out of range.");
}
if (board[row][col] != 0) {
throw new Exception("Invalid move: the cell is not empty.");
}
if (player != 1 && player != 2) {
throw new Exception("Invalid move: player should be 1 or 2.");
}
// 1代表黑棋,2代表白棋
board[row][col] = player;
}
}
```
这是一个简单的五子棋棋盘实现,其中通过2维数组存储每个位置的棋子状态,通过printBoard函数打印出整个棋盘。makeMove函数用于在棋盘上落子,并检查所落子的位置是否为空、是否越界,并记录下当前落子的玩家。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)