java 五子棋 源码
时间: 2023-12-04 10:01:02 浏览: 112
java 五子棋 源代码
五子棋是一种非常经典的棋类游戏,而Java作为一种流行的编程语言,可以用来开发五子棋游戏。下面是一个简单的五子棋Java源码示例:
```java
import java.util.Scanner;
public class GobangGame {
private static int[][] board = new int[15][15]; // 15*15的棋盘
private static final int EMPTY = 0;
private static final int BLACK = 1;
private static final int WHITE = 2;
private static Scanner scanner = new Scanner(System.in);
public static void main(String[] args) {
boolean isBlackTurn = true;
printBoard();
while (true) {
int row, col;
if (isBlackTurn) {
System.out.println("轮到黑棋(●)落子,输入坐标(行 列):");
row = scanner.nextInt();
col = scanner.nextInt();
if (isValidMove(row, col)) {
board[row][col] = BLACK;
printBoard();
if (isWin(BLACK)) {
System.out.println("黑棋获胜!");
break;
}
isBlackTurn = false;
} else {
System.out.println("无效落子!");
}
} else {
System.out.println("轮到白棋(○)落子,输入坐标(行 列):");
row = scanner.nextInt();
col = scanner.nextInt();
if (isValidMove(row, col)) {
board[row][col] = WHITE;
printBoard();
if (isWin(WHITE)) {
System.out.println("白棋获胜!");
break;
}
isBlackTurn = true;
} else {
System.out.println("无效落子!");
}
}
}
}
private static boolean isValidMove(int row, int col) {
return row >= 0 && row < 15 && col >= 0 && col < 15 && board[row][col] == EMPTY;
}
private static void printBoard() {
for (int[] row : board) {
for (int cell : row) {
if (cell == EMPTY) {
System.out.print(" ");
} else if (cell == BLACK) {
System.out.print("● ");
} else {
System.out.print("○ ");
}
}
System.out.println();
}
}
private static boolean isWin(int player) {
// 判断是否有五个棋子连成一线
// 请自行实现判断规则
return false;
}
}
```
以上是一个简单的五子棋游戏的Java源码示例,游戏通过控制台输入坐标进行落子,然后判断是否获胜。实际上,五子棋的获胜判断规则比较复杂,需要判断横向、纵向、斜向等多个方向上是否有五个同色棋子连成一线,这部分功能需要根据具体规则进行实现。
阅读全文