是否有一种优雅的方法来重命名Java布尔值以提高代码的可读性?

问题描述

我有以下(Java 8)代码

private void toggleNewUser() {
    if (ToggleButton.isOn()) {
        fadeLabel(true);
        transitionButtons(true);
    }
    else {
        fadeLabels(false);
        transitionButtons(true);
    }
}

我的fadeLabeltransitionButtons函数在淡入和过渡之间切换,当布尔值分别为truefalse时,它们会这样做。但是我想用“ in”和“ out”替换truefalse,以提高代码的可读性。有什么优雅的方法吗?

我想出的唯一方法是笨拙而不是优雅:

private void toggleNewUser() {

    boolean in = ToggleButton.isOn();
    boolean out = ToggleButton.isOn();

    if (ToggleButton.isOn()) {
        fadeLabel(in);
        transitionButtons(in);
    }
    else {
        fadeLabels(out);
        transitionButtons(out);
    }
}

解决方法

作为一种简单的方法,也许为TRUE和FALSE定义常量就可以了吗?在您的班级中定义它们,例如:

public static final boolean IN = true;
public static final boolean OUT = false;

否则,您对Java的使用会非常有限。您也可以尝试枚举:

public enum Anim {
    IN(true),OUT(false);
     
    public final boolean state;
     
    private Element(boolean state) {
        this.state = state;
    }
}