40

ブール変数がある場合:

boolean myBool = true;

if/else 句を使用すると、これの逆を取得できます。

if (myBool == true)
 myBool = false;
else
 myBool = true;

これを行うためのより簡潔な方法はありますか?

4

5 に答える 5

103

条件ステートメント ( 、、...)!で行う傾向があるように、論理 NOT 演算子を使用して代入するだけです。すでにブール値を使用しているため、次のように反転します(逆も同様です)。ifforwhiletruefalse

myBool = !myBool;
于 2010-10-11T15:00:27.853 に答える
44

さらにクールな方法 (変数を設定myBool = !myBoolする場合、4 文字を超える変数名よりも簡潔です):

myBool ^= true;

ちなみに、 は使用しないでください。使用した方がif (something == true)簡単ですif (something)(false との比較と同じで、否定演算子を使用します)。

于 2010-10-11T15:12:05.473 に答える
1

最も簡潔な方法は、ブール値を反転せず、反対の条件を確認したい場合に、後でコード内で !myBool を使用することです。

于 2012-02-18T04:43:21.040 に答える
-3
myBool = myBool ? false : true;
于 2010-10-11T16:01:48.823 に答える