我如何才能使这段代码更好

PSR*_*PSR 1 java loops if-statement

我有像这样的领域

变量1,变量2,variable3 ....等

我的条件是

if(variable1 != null && variable1 != 0 )
  myobject.setFirstValue(variable1);

if(variable2 != null && variable2 != 0 )
 myobject.setSecondValue(variable2);

if(variable3 != null && variable3 != 0 )
 myobject.setThirdValue(variable3);
Run Code Online (Sandbox Code Playgroud)

像这样,我有近15个人的信仰.有没有办法以简单的方式编写所有这些条件.变量名称与我发布的不完全相同.它们与我发布的不同.

bla*_*ank 5

你可以从...开始

if (notNullOrZer0(variable1)) {
   ...
}

private boolean notNullOrZero(Integer x) {
    return x != null && x != 0;
}
Run Code Online (Sandbox Code Playgroud)

然后可能把所有这些变量都放在List<Integer>......这取决于你的代码的其余部分是如何构造的......


Sub*_*der 5

您可以创建一个isNotNullorequalsZero检查非空且不等于零的方法

private boolean isNotNullorequalsZero(Integer value){
     return value != null && value != 0;
}
Run Code Online (Sandbox Code Playgroud)

你用它 -

if(isNotNullorequalsZero(variable1) )
  myobject.setFirstValue(variable1);

if(isNotNullorequalsZero(variable2) )
 myobject.setFirstValue(variable2);

if(isNotNullorequalsZero(variable3) )
 myobject.setFirstValue(variable3);
Run Code Online (Sandbox Code Playgroud)