ブール変数がある場合:
boolean myBool = true;
if/else 句を使用すると、これの逆を取得できます。
if (myBool == true)
myBool = false;
else
myBool = true;
これを行うためのより簡潔な方法はありますか?
条件ステートメント ( 、、...)!
で行う傾向があるように、論理 NOT 演算子を使用して代入するだけです。すでにブール値を使用しているため、次のように反転します(逆も同様です)。if
for
while
true
false
myBool = !myBool;
さらにクールな方法 (変数を設定myBool = !myBool
する場合、4 文字を超える変数名よりも簡潔です):
myBool ^= true;
ちなみに、 は使用しないでください。使用した方がif (something == true)
簡単ですif (something)
(false との比較と同じで、否定演算子を使用します)。
最も簡潔な方法は、ブール値を反転せず、反対の条件を確認したい場合に、後でコード内で !myBool を使用することです。
myBool = myBool ? false : true;