Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我正在制作一个游戏,每次他们在java guy中输赢时,我都需要把它加起来_Java_User Interface_Actionlistener - Fatal编程技术网

我正在制作一个游戏,每次他们在java guy中输赢时,我都需要把它加起来

我正在制作一个游戏,每次他们在java guy中输赢时,我都需要把它加起来,java,user-interface,actionlistener,Java,User Interface,Actionlistener,我有这个和它在一个行动的听众。如果我丢失,它将显示1。然后它重置电路板,1将留在那里,这就是我想要的。。如果我再次输了,它不会把1变成2。胜利也有同样的问题。我希望这是足够的信息 if (game.getGameStatus() == GameStatus.Lost) { displayBoard(); JOptionPane.showMessageDialog(null, "You Lose \nThe game will reset"); //exposeMi

我有这个和它在一个行动的听众。如果我丢失,它将显示1。然后它重置电路板,1将留在那里,这就是我想要的。。如果我再次输了,它不会把1变成2。胜利也有同样的问题。我希望这是足够的信息

if (game.getGameStatus() == GameStatus.Lost) {
    displayBoard();
    JOptionPane.showMessageDialog(null, "You Lose \nThe game will     reset");
    //exposeMines = false;
    game.reset();
    displayBoard();

    int losses = 0;
    losses = losses + 1;
    String lost = Integer.toString(losses);
    jtfLosses.setText(String.format(lost));

}

每次用0覆盖损失数,然后增加1。在该方法之外初始化变量
loss
,不要每次递增它时都这样做。

每次输入if语句时,定义“int loss=0”,它会被0覆盖,然后再次添加1,结果每次都是1

如此定义

int losses = 0; 
以前

if (game.getGameStatus() == GameStatus.Lost) {
...
将修复此问题,如下所示:

int losses = 0; 
if (game.getGameStatus() == GameStatus.Lost) {
...

但请注意,此解决方案只是为了向您说明问题所在,为了真正纠正问题,您应该使用成员变量,而不是污染全局名称空间

我建议您使用属性文件存储此信息,如 你用

比你能用的还多

    int loose =(prop.getProperty("PlayerLoose"));
    loose++;
    prop.setProperty("PlayerLoose", loose+"");

    String lost = Integer.toString(loose);
    jtfLosses.setText(String.format(lost));

谢谢你的帮助
    int loose =(prop.getProperty("PlayerLoose"));
    loose++;
    prop.setProperty("PlayerLoose", loose+"");

    String lost = Integer.toString(loose);
    jtfLosses.setText(String.format(lost));