我有一些布尔变量将作为参数传递
boolean var1;
boolean var2;
boolean var3;
boolean var4;
Run Code Online (Sandbox Code Playgroud)
根据这些变量,我必须编写类似这样的代码
if (var1 && !var2 && !var3 && !var4) {
//do something
}
elsif (var1 && var2 && !var3 && !var4) {
//do something
}
Run Code Online (Sandbox Code Playgroud)
...等等..使用所有可能的组合.我可以使用if-else语句来做到这一点.需要知道是否有更好的方法.提前致谢.
建立一个位模式出了四个布尔变量,例如0110手段var1 = false,var2 = true,var3 = true和var4 = false。
然后您可以switch在生成的数字上使用该构造。
int b = (var1 ? 8 : 0) | (var2 ? 4 : 0) | (var3 ? 2 : 0) | (var4 ? 1 : 0);
switch(b) {
case 0:
...
case 1:
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
820 次 |
| 最近记录: |