今天我们来写如何判断输赢
首先要判断一个格子是否在棋盘范围内
private boolean verify(int row,int col) {
return (row>=0&&row<this.rows&&col>=0&&col<this.cols);
}
然后我们要分三步查看是否满足胜利条件
第一步是查看一行当中有没有五个连起来的
这里的两个参数表示下的最后一步棋所在的行与列。
private boolean checkrow(int row,int col) {
for(int i=row-4;i<=row;i++) { (往左推五个格子依次判断)
if(verify(i,col)) { (先判断是否在棋盘范围内)
if((labels[i][col].getBackground()).equals(colors[clickcount%2])
&&(labels[i+1][col].getBackground()).equals(colors[clickcount%2])
&&(labels[i+2][col].getBackground()).equals(colors[clickcount%2])
&&(labels[i+3][col].getBackground()).equals(colors[clickcount%2])
&&(labels[i+4][col].getBackground()).equals(colors[clickcount%2])){
return true;
}
}
}
return false;
}
在这里红色的计数器是偶数ÿ