Java 将布尔值作为构造函数参数传递的问题

Java 将布尔值作为构造函数参数传递的问题,java,swing,boolean,Java,Swing,Boolean,首先,我询问用户是否希望第一个在游戏中移动,或者如果不想,计算机将通过执行以下操作首先进行游戏: boolean playFirst = !gameName.equals("GUESSING GAME") && JOptionPane.showConfirmDialog(null, "Do you want to play " + "FIRST?") == JOptionPane.YES_OPTION; 然

首先,我询问用户是否希望第一个在游戏中移动,或者如果不想,计算机将通过执行以下操作首先进行游戏:

boolean playFirst = !gameName.equals("GUESSING GAME")
            && JOptionPane.showConfirmDialog(null, "Do you want to play "
            + "FIRST?")
            == JOptionPane.YES_OPTION;
然后我想把答案传递给游戏构造函数

尼姆:

Tic Tac Toe:

public TicTacToe(boolean playSmart, boolean playersTurn)
{
    this.playSmart = playSmart;
    this.playersTurn = playersTurn;
    this.gameRecord = "TIC-TAC-TOE";

}
只有当玩家选择先玩时,游戏才能正常运行,但如果他们想玩第二个游戏,玩家也会先玩

我尝试在构造函数中使用随机布尔值运行程序

this.itsMyTurn = ( new Random() ).nextBoolean();
当我这样做的时候,程序运行得很好,但是它没有按照我希望的方式工作,从用户那里得到答案,然后把它传递给构造函数


有什么建议吗?

这些施工人员是否已完成?否则我会胡乱猜测,你在某个地方混合了局部变量
playersTurn
和字段
playersTurn
。我假设这返回真的<代码>!gameName.equals(“猜谜游戏”)这些是构造函数中我唯一更新这些变量的区域,除了在每个玩家移动后,变量被设置为另一个玩家。superEb:只有当玩家选择先移动时才会返回真值,我想。。。我有3个游戏,其中两个使用了参数,而猜测游戏没有。这也是可疑的:你有
playersTurn
itsMyTurn
变量吗?那么,您的程序逻辑可能是关闭的:设置一个变量,但在决定哪个玩家离开时检查另一个变量。
this.itsMyTurn = ( new Random() ).nextBoolean();