public void chooseLane() {

    int lane = MathUtils.random(1, 3);
    System.out.println(lane);
    spawnCar();

}

public void spawnCar() {

    if(lane == 1){
        batch.begin();
        batch.draw(carsb, 0, 0);
        batch.end();
        System.out.println("testing");

    }


chooseLane()中,它打印出int的int(设置为random并每秒打印一次,未显示),但是在lane == 1中,它没有完成spawnCar方法。有什么帮助吗?

最佳答案

lane方法之外声明chooseLane()变量。因为,您将lane变量声明为chooseLane()的局部变量,这就是为什么在chooseLane()方法之外无法访问它的原因。

int lane;

public void chooseLane() {

    lane = MathUtils.random(1, 3);
    System.out.println(lane);
    spawnCar();

}

public void spawnCar() {

    if(lane == 1){
        batch.begin();
        batch.draw(carsb, 0, 0);
        batch.end();
        System.out.println("testing");

    }
}

09-28 09:38