&&
演算子はshort-circuitであり、必要でない場合は右辺を評価しません。この場合、次のことが必要です。
if(Check==null && Check.isEmpty()){
System.out.println("get Inside")
}
Check
である場合null
(そしてその場合)、 の後に引き続き条件をチェックする&&
と、 が得られCheck.isEmpty()
ます。Check
であるため、どちらが NEP であるnull
かのようです。null.isEmpty()
なんで?
2 つの式&&
の間に がある場合、最初の式が false の場合、答えは常に false になり、反対側はチェックされませんが、最初の式がtrue
の場合は、引き続き反対側をチェックして、すべての式はtrue
またはに評価される必要がありますfalse
。
しかし、次の場合:
if(Check!=null && Check.isEmpty()){
System.out.println("get Inside")
}
すると、チェックするのは冗長なので、右辺には到達しません。あなたはすでに を得ており、あなたが得るか右側にあるfalse
かは関係ありません。これは( FALSE && WHATEVER = FALSE ) であるため、結果は次のようになります。では、なぜチェックするのでしょうか。true
false
false
AND
このリンクが役立つ場合があります。
( Java 命名規則に従い、変数を小文字で始めることをお勧めします)。