假设我有4个变量
String a;
String b;
String c;
String d;
Run Code Online (Sandbox Code Playgroud)
我想检查单个变量或变量组合是否不是Null并相应地采取行动.
例如,一种方法是使用if-else这种方式
if(a!=null && b == null && c == null && d == null) {
//doSomething }
else if(a==null && b!= null && c == null && d == null) {
//doSomething }
else if(a==null && b!= null && c == null && d == null) {
//doSomething }
else if(a==null && b== null && c != null && d == null) {
//doSomething }
......
//Similarly combination of two variables
if(a!=null && b != null && c == null && d == null) {
//doSomething }
else if(a!=null && b== null && c != null && d == null) {
//doSomething }
else if(a!=null && b== null && c == null && d != null) {
//doSomething }
......
//and so on
//Similarly combination of three variables
if(a!=null && b != null && c != null && d == null) {
//doSomething }
else if(a!=null && b== null && c != null && d != null) {
//doSomething }
else if(a!=null && b== null && c == null && d != null) {
//doSomething }
....
Run Code Online (Sandbox Code Playgroud)
如何实现这种情况Switch甚至不接受null我想到使用队列,因为它不允许空值,但我需要有一个变量的键,以便我可以得到值并操纵一些东西.帮助将不胜感激
你可以用switch语句构建一个额外的变量来实现这个:
int switchvar = 0;
if (a == null) {switchvar += 1;}
if (b == null) {switchvar += 10;}
if (c == null) {switchvar += 100;}
if (d == null) {switchvar += 1000;}
Run Code Online (Sandbox Code Playgroud)
然后你可以使用
switch (switchvar) {
case(1): //only a ==null
...
case(101): //a == null and c == null
....
case(1011): //a,b,d null
....
case(1111): // all variables null
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
502 次 |
| 最近记录: |