首页 > 解决方案 > 如何通过按键在两个数字之间切换?

问题描述

numbers我需要按键在两者之间切换"q"

第一次按下:

number = 1;

第二次按下:

number = 2;

第三次按下:

number = 1;

第四次按下:

number = 2;

ETC

得到method并且variable

 private static int counter = 0;

 private int switchNumbers() {
        if (Gdx.input.isKeyJustPressed(Input.Keys.Q)){
            counter = 1;
        }
        if (counter == 1 && Gdx.input.isKeyJustPressed(Input.Keys.Q)){
            counter = 2;
        }
        if (counter == 2 && Gdx.input.isKeyJustPressed(Input.Keys.Q)){
            counter = 1;
        }

      return counter;
    }

variable counter总是等于 1。

怎样才能实现呢(switching numbers)

标签: javaif-statementlibgdx

解决方案


您可以检查计数器的当前值是多少,如果它的 1 然后放 2 否则放 1:

通过ternary opeator

private static int counter = 0;

private int switchNumbers() {
    if (Gdx.input.isKeyJustPressed(Input.Keys.Q)) {
        counter = counter == 1 ? 2 : 1;
    }
    return counter;
}

或简单使用if-else

private int switchNumbers() {
    if (Gdx.input.isKeyJustPressed(Input.Keys.Q)) {
        if(counter == 1) {
            counter = 2;
        } else {
            counter = 1;
        }
    }
    return counter;
}

推荐阅读