我创建了一个名为endGame的布尔值,当我单击按钮时它将被设置为false,然后在另一个类上,为该布尔值所在的类创建了一个对象。当发生某些事情时,endGame将设置为true

if(condition==true){ //the endGame variable will be equal to true only on this class
 classObj.endGame=true;
}

//on the other class where the endGame is Located it is still false.



   //button class
public boolean endGame;
    public void create(){
    endGame=false;

     playButton.addListener(new InputListener(){
               @Override
               public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
                   endGame=false;
                   System.out.println(endGame);
                   return super.touchDown(event, x, y, pointer, button);
               }
           });
    }

    //second class
    if(sprite.getY()>=700){
       buttonObj.endGame=true;
       enemyIterator.remove();
       enemies.remove(sprite);
    }

最佳答案

然后在另一个类上,我为该布尔值所在的类创建了一个对象


我假设endGame变量不是静态的。否则,您无需创建布尔值所在的类的对象即可访问它。

这意味着,如果在相关类的一个对象中将endGame设置为true,则不会在该类的不同对象中更新endGame的值。

关于java - 为什么我的 boolean 变量没有在其他类上更新?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31209509/

10-10 17:01