我正在开发 Android 应用程序,但遇到了一些问题。我有一些匿名类(事件监听器)。它们是从数据库中参数化的。我所做的是:
buttonA.setOnTouchListener(new View.OnTouchListener() {
private Boolean isActive = null;
private boolean isTrigger;
private int onLevel;
private int offLevel;
private int chIdx;
@Override
public boolean onTouch(View v, MotionEvent event) {
if (isActive == null) {
Cursor btnSettings = dbHelper.getButtonsTable().fetchButton(1, profileId, currentMode);
...
...
}
return true;
}
将 boolean 对象用作三元开关(如果监听器尚未参数化,则它具有空值)是否被认为是一种好习惯,或者我应该使用两个 boolean 变量……或者一个整数?
你有什么想法吗?
最佳答案
最好的是,使用具有三种状态准确描述的类型(可能是枚举)。 boolean 值不会向调用函数的人提供很多信息(尤其是用作三态时)。
public enum ActiveStatus {
On,
Off,
Unknown
}
关于java - boolean 值 vs boolean 值作为 trilean 开关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6776002/