Java 2x2分组逻辑

Java 2x2分组逻辑,java,tic-tac-toe,Java,Tic Tac Toe,X将是赢家,因为他有一个2x2组感谢您的任何帮助 example code for to find a vertical tic tac toe winner for(int i=0; i<BOARD_SIZE; i++) { for(int j=0; j<BOARD_SIZE; j++) if(board[i][j] != symbol)

X将是赢家,因为他有一个2x2组感谢您的任何帮助

             example code for to find a vertical tic tac toe winner

         for(int i=0; i<BOARD_SIZE; i++)
        {
            for(int j=0; j<BOARD_SIZE; j++)
                if(board[i][j] != symbol)
                    continue Label1;
            //if reached, winning line found
            return true;
        }

x将在这里获胜

这将有点笨拙,但

for(int i = 0; i< (BOARD_SIZE -1); i++){
   for(int j = 0; j < BOARD_SIZE -1); j++){
      if( (board[i][j] == symbol) &&
          (board[i+1][j] == symbol) &&
          (board[i][j+1] == symbol) &&
          (board[i+1][j+1] == symbol)
        ) { /* winner */ return true;}
   }
}
/* no winner found */ return false;
for(int i=0;i<(电路板大小-1);i++){
对于(int j=0;j
我考虑过为复杂的条件添加内部for循环,但我认为如果您只需要2x2,则不保证这样做。如果您需要单独搜索“3x3赢家”或“NxN赢家”,那么内部循环肯定是合理的

for(int i = 0; i< (BOARD_SIZE -1); i++){
   for(int j = 0; j < BOARD_SIZE -1); j++){
      if( (board[i][j] == symbol) &&
          (board[i+1][j] == symbol) &&
          (board[i][j+1] == symbol) &&
          (board[i+1][j+1] == symbol)
        ) { /* winner */ return true;}
   }
}
/* no winner found */ return false;