井字游戏 - Java

Tic Tac Toe - Java

我正在 Java 中制作井字游戏,我需要设置 "X" 值,以便在第 1、3、5、7 和 9 回合放置一个 X盒子,当它是第 2、4、6 和 8 轮时,放置 "O"。如果有人能提供帮助,将不胜感激

我尝试使用计数器:

public void onClick(View event) {
    // TODO Auto-generated method stub
    if (event == btnBox1) {
        counter++;
        if (counter == 0) {
            btnBox1.setText("X");
            btnBox1.setEnabled(false);
        }

        if (counter == 1) {
            btnBox1.setText("O");
            btnBox1.setEnabled(false);
        }

        // ...
    }

    // ...
}

有两种方法可以做到:

  • remainder or modulus % 运算符。它returns 两个数相除的余数。 counter % 2 如果计数器为奇数则为 1,如果计数器为偶数则为 0。
  • the bitwise AND operator &,由 Polywhirl 先生建议。您也可以执行 (n & 1) == 0(按位与)来检查偶数。

使用取模运算符,您的方法将是:

public void onClick(View event) { 
    if (event == btnBox1){ 
        counter++; 
        if (counter % 2 == 0){ 
            btnBox1.setText("X"); 
            btnBox1.setEnabled(false); 
        }
        if (counter % 2 == 1){
            btnBox1.setText("O");
            btnBox1.setEnabled(false);
        }
    }
}