【发布时间】:2018-10-09 15:57:31
【问题描述】:
我有这种方法可以在井字游戏中检查获胜者
public boolean hasWinner(Cell shape, int row, int col) {
int count = 0;
for(int i=0;i<WIDTH;i++){
if(this.board[row][i]==shape){
count++;
}
else{
count=0;
}
if(count>=5){
return true;
}
}
count=0;
for(int i=0;i<HEIGHT;i++){
if(this.board[i][col]==shape){
count++;
}
else{
count=0;
}
if(count>=5){
return true;
}
}
我已经编写了检查代码,如果在最后添加的符号的行和列上连续有 5 个相同的符号,现在我需要检查两个对角线,最后添加的符号位于哪个对角线上。有什么技巧吗,还是我必须写board[row+1][col+1]==shape && board[row+2][col+2]==shape...之类的东西?
【问题讨论】:
-
我不明白你的行和列参数应该做什么?
-
它们是最后添加的十字或圆的坐标
标签: java matrix tic-tac-toe