Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 处理!=两个变量的null检查_Java - Fatal编程技术网

Java 处理!=两个变量的null检查

Java 处理!=两个变量的null检查,java,Java,我有下面的代码,我正在检查两个变量的NOTNULL检查 if (userParameter != null || configurationParameter != null){ add.userParameter(); add.configurationParameter(); } 是否有任何方法可以在一个if条件中检查notnull,如java中的if((userParameter或configurationParameter)!=null)。由于您有两个参数,您最多可以创

我有下面的代码,我正在检查两个变量的NOTNULL检查

 if (userParameter != null || configurationParameter != null){
   add.userParameter();
   add.configurationParameter();
 }

是否有任何方法可以在一个
if
条件中检查not
null
,如java中的
if((userParameter或configurationParameter)!=null)

由于您有两个参数,您最多可以创建一个返回
true
false
的方法,具体取决于检查:

 if (checkForNull(userParameter, configurationParameter)){
   add.userParameter();
   add.configurationParameter();
 }

 private boolean checkForNull(Object... objects){
    for (Object obj : objects){
        if (obj == null){
            return true;
        }
    }
    return false;
 }
已编辑


正如@shmosel和@AxelH所建议的那样,使用varargs将更有效。感谢您的改进

因为您有两个参数,您最多可以创建一个方法,根据检查返回
true
false

 if (checkForNull(userParameter, configurationParameter)){
   add.userParameter();
   add.configurationParameter();
 }

 private boolean checkForNull(Object... objects){
    for (Object obj : objects){
        if (obj == null){
            return true;
        }
    }
    return false;
 }
已编辑


正如@shmosel和@AxelH所建议的那样,使用varargs将更有效。感谢改进

是的,有三元运算符
(条件运算符):

(注意:逻辑与代码不同,您可能需要检查两者是否都不为null)

然而,使用其他人也在使用的功能可能是个好主意

是的,有三元运算符
(条件运算符):

(注意:逻辑与代码不同,您可能需要检查两者是否都不为null)

然而,使用其他人也在使用的功能可能是个好主意

在某些情况下,您当前的代码将只检查一个条件,因为
|
操作员短路。如果条件
userParameter!=null
为true,则JVM甚至不会检查其他条件


除此之外,据我所知,无法在一次比较中检查两个单独变量中的
null

在某些情况下,您当前的代码将只检查一个条件,因为
|
运算符短路。如果条件
userParameter!=null
为true,则JVM甚至不会检查其他条件

除此之外,据我所知,没有办法在一次比较中检查两个单独变量中的
null

没有办法将空(单个)对象与多个对象进行比较 java中的东西(即userParameter和configurationParameter)

但您可以编写如下方法,在使用| |检查多个值是否为null时使用它:-

public boolean isNull(Object... args){
for(Object arg: args){
  if(arg==null) return true;
}
return false;
}
没有办法将空(单个)对象与多个对象进行比较 java中的东西(即userParameter和configurationParameter)

但您可以编写如下方法,在使用| |检查多个值是否为null时使用它:-

public boolean isNull(Object... args){
for(Object arg: args){
  if(arg==null) return true;
}
return false;
}

您可以使用
二进制运算符


或者您可以使用
三值运算符

您可以使用
二值运算符



或者你可以使用
三元运算符

你想用它做什么?是的,这个问题没有严格的联系,但我认为在你的代码中应该有&&运算符。如果两者都不为空,那么就进行运算,对吗?我建议将
|
替换为
&&
,但我真的不理解你的问题。可能与你试图存档的内容重复?是的,问题不明确,但我认为在你的代码中应该有&&operator。如果两者都不为null,那么就进行操作,对吗?我建议用
&&
替换
|
,但我真的不理解你的问题。如果使用helper方法,则可能会出现重复,最好全力以赴:
布尔checkForNull(Object…objects){for(Object obj:objects)If(obj==null)return false;return true;}
相同的注释,使用varargs使这种方法更有用。(我刚刚在评论部分写了这篇文章)你只会用这个来检查第一个论点。
返回true
应该在循环之后,如果您确定没有
null
;)我并不是说varargs更有效,只是更有用。
checkForNull
对于一个不检查空值的方法来说可能是一个令人困惑的名称。另外,第一行缺少一个右括号。如果使用帮助器方法,最好全力以赴:
boolean checkForNull(Object…objects){for(Object obj:objects)If(obj==null)返回false;返回true;}
相同的注释,使用varargs使这种方法更有用。(我刚刚在评论部分写了这篇文章)你只会用这个来检查第一个论点。
返回true
应该在循环之后,如果您确定没有
null
;)我并不是说varargs更有效,只是更有用。
checkForNull
对于一个不检查空值的方法来说可能是一个令人困惑的名称。另外,第一行缺少一个右括号。为什么是
字符串
<代码>对象效果更好我的方法只是一个提示。这里没有提到参数的类型,所以假设它们是字符串。好吧,在
null
check的情况下,类型不重要,不能在primitve上执行,仅此而已。所以你可以是泛型;)为什么是
字符串
<代码>对象效果更好我的方法只是一个提示。这里没有提到参数的类型,所以假设它们是字符串。好吧,在
null
check的情况下,类型不重要,不能在primitve上执行,仅此而已。所以你可以是泛型;)这与
&&
|
不同,与
&&
|
不同,这与
的if(userParameter!=null&&configurationParameter!=null)相同{
。根据经验,在三值运算中永远不需要布尔文字。Nit:它的正确名称是the,这是一个三值运算符(目前是唯一的三值运算符)。@shmosel是的,我知道逻辑是不同的(请参阅no)