if (board[i][posY] == icoboard[i + 1][posY] == ico) {
sameCount++;
} else if (sameCount != WIN_COUNT - 1) {
sameCount = 0;
}
}
}
if (sameCount == 0) {
// 从左上到右下计算相同相邻棋子的数目
int j = startY;
for (int i = startX; iendX; i++) {
if (jendY) {
if (board[i][j] == icoboard[i + 1][j + 1] == ico) {
sameCount++;
} else if (sameCount != WIN_COUNT - 1) {
sameCount = 0;
}
j++;
}
}
}
return sameCount == WIN_COUNT - 1 ? true : false;
}
public static void main(String[] args) throws Exception {
GobangGame gb = new GobangGame(new Chessboard());
gb.start();
}
}
求一个简单的JAVA五子棋代码?。?网上复制的别来了!以下是现写的 实现了两人对战自己复制后运行把 没什么难度 类名 Games
import java.util.Scanner;
public class Games {
private String board[][];
private static int SIZE = 17;
private static String roles = "A玩家";
//初始化数组
public void initBoard() {
board = new String[SIZE][SIZE];
for (int i = 0; iSIZE; i++) {
for (int j = 0; jSIZE; j++) {
//if(i==0){
//String str = "";
//str += j+"";
//board[i][j]= str;
//}else if(i!=0j==0){
//String str = "";
//str += i+"";
//board[i][j]= str;
//}else{
board[i][j] = "╋";
//}
}
}
}
//输出棋盘
public void printBoard() {
for (int i = 0; iSIZE; i++) {
for (int j = 0; jSIZE; j++) {
System.out.print(board[i][j]);
}
System.out.println();
}
}
//判断所下棋子位置是否合理
public boolean isOk(int x, int y) {
boolean isRight = true;
if (x = 16 || x1 || y = 16 | y1) {
//System.out.println("输入错误 , 请从新输入");
isRight = false;
}
if (board[x][y].equals("●") || board[x][y].equals("○")) {
isRight = false;
}
return isRight;
}
//判断谁赢了
public void whoWin(Games wz) {
// 从数组挨个查找找到某个类型的棋子就从该棋子位置向右,向下,斜向右下 各查找5连续的位置看是否为5个相同的
int xlabel;// 记录第一次找到某个棋子的x坐标
int ylabel;// 记录第一次找到某个棋子的y坐标
// ●○╋
// 判断人是否赢了
for (int i = 0; iSIZE; i++) {
for (int j = 0; jSIZE; j++) {
if (board[i][j].equals("○")) {
xlabel = i;
ylabel = j;
// 横向找 x坐标不变 y坐标以此加1连成字符串
String heng = "";
if (i + 5SIZEj + 5SIZE) {
for (int k = j; kj + 5; k++) {
heng += board[i][k];
}
if (heng.equals("○○○○○")) {
System.out.println(roles+"赢了!您输了!");
System.exit(0);
}
// 向下判断y不变 x逐增5 连成字符串
String xia = "";
for (int l = j; li + 5; l++) {
xia += board[l][j];
// System.out.println(xia);
}
if (xia.equals("○○○○○")) {
System.out.println(roles+"赢了!您输了!");
System.exit(0);
}
// 斜向右下判断
String youxia = "";
for (int a = 1; a = 5; a++) {
youxia += board[xlabel++][ylabel++];
}
if (youxia.equals("○○○○○")) {
System.out.println(roles+"赢了!您输了!");
System.exit(0);
}
}
}
}
}
// 判断电脑是否赢了
for (int i = 0; iSIZE; i++) {
for (int j = 0; jSIZE; j++) {
if (board[i][j].equals("●")) {
xlabel = i;
ylabel = j;
// 横向找 x坐标不变 y坐标以此加1连成字符串
String heng = "";
if (j + 5SIZEi + 5SIZE) {
for (int k = j; kj + 5; k++) {
heng += board[i][k];
推荐阅读
- SAP年度预算管控失效,sap预算可用性控制配置
- 品牌推广如何利用新媒体,品牌推广和新媒体运营的区别
- 数据导入sqlserver需注意什么,sql server数据导入导出的特点
- 冬奥直播日程安排是什么,冬奥会直播几点开始
- c语言出现主函数错误 c语言出现主函数错误怎么解决
- vs环境下编程c语言,vs使用c语言
- 大动作和精细动作的游戏,大动作和精细动作的区别
- 电商运营如何晋升,电商运营晋升岗位
- linux常用文本命令 linux常见的文本编辑工具有哪些