java - 有没有一种优雅的方法来重命名 Java 布尔值以提高我的代码的可读性?
问题描述
假设我有以下(Java 8)代码:
private void toggleNewUser() {
if (ToggleButton.isOn()) {
fadeLabel(true);
transitionButtons(true);
}
else {
fadeLabels(false);
transitionButtons(true);
}
}
我的fadeLabel
和transitionButtons
函数在淡入淡出和淡入淡出之间切换,当布尔值分别是true
和时它们会这样做false
。但是我想用“in”和“out”替换true
and false
,以提高我的代码的可读性。有什么优雅的方法吗?
我能想出的唯一方法是有点笨拙,而且不是很优雅:
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;
}
}
推荐阅读
- angular - Visual Studio 2017 .NET Core 2.1 Angular 上的“npm run build -- --prod”错误
- c# - C# Visual Studio Validate 所以文本框只允许 AH 之间的值
- android - 在考虑通过之前,是否应该在慢速模拟器上通过测试?
- gwt - 在 GWT 应用程序中使用 codehaus 'ObjectMappper' 类来解析 json
- excel - 如何使用 Apache POI 将多个工作簿合并为一个工作簿
- email - SMTP 如何在 DATA 命令后转义 RSET 命令?
- python - sys.path.append("..") 做什么?
- wso2 - 如何记录 WSO2 中介序列
- javascript - npx ts-lint 在 docker 中运行时找不到模块'typescript'
- jenkins - 詹金斯 CI 的工作服插件?