!=
制御ステートメントのブール式が反対を意味する前の意味を確認したいと思います。
例えば:
if (!networkConnected())
それは「ネットワークが接続されていない場合」という意味ですか?
!=
制御ステートメントのブール式が反対を意味する前の意味を確認したいと思います。
例えば:
if (!networkConnected())
それは「ネットワークが接続されていない場合」という意味ですか?
はい、それは論理的な反対を意味します。equals演算子でも機能します。
メソッドが基本的なブール型を返すと仮定します
// means the Network is NOT connected
if (!NetworkConnected())
これは同等です
if (NetworkConnected() != true)
つまり、論理的には
if (NetworkConnected() == false)
ここで、メソッドがブール値(実際には実際のオブジェクト)を返すと仮定すると、これは次のことを意味します。
// means the Network is NOT connected
if (! Boolean.TRUE.equals(NetworkConnected());
また
if (Boolean.FALSE.equals(NetworkConnected());
はい、それはブール否定です
それで
true == true
!true == false
!!true == true
!!!true == false
同様にfalseで
!false == true
この単項演算子の実際の名前はLogical Complement Operator
、ブール値を反転するものです。
はい。感嘆符は、その横に表示されるブール値を無効にします。
あなたの質問に正確に答えるために:いいえ。この演算子!=
は否定ではありません。それはアイデンティティを意味しNOT IDENTICAL
、その反対です。==
!
式のブール値を切り替える単項演算子です。
次のコードについて考えてみます。
boolean b = true;
System.out.println(!b); // outputs: false
System.out.println(!!b); // outputs: true
b = !b; // first switch: b is false now
b = !b; // second switch: b is true now
それで:
それは「ネットワークが接続されていない場合」という意味ですか?
はい!
javaでは、値を反転するために使用される感嘆符(!
)と、ブール否定演算子(と等しくない)を!=
呼び出します。
例:if(string variable!= null)ここで、文字列変数がnullかどうかを確認します。nullは、ブロックが実行されないかどうかを意味します。それ以外の場合は実行されます。