Java でブール変数を切り替える
Boolean
は、boolean
プリミティブをラップする Java のラッパー クラスです。 オブジェクト指向プログラミングでは、クラス
は、プリミティブではなくオブジェクトを最大限に活用する方法です。
クラスの概念は、Boolean
クラス内で boolean
または bool
プリミティブ値をバインドするソリューションを呼び起こしました。
Java でブール変数を切り替える
Boolean
クラスには、TRUE
変数と FALSE
変数の 2つの静的な値しかありません。 静的メンバー変数を使用すると、Boolean は valueOf()
、parseBoolean
、toString
などの静的メソッドも保持します。
ユーザーが Java プログラムでブール変数の値を切り替えるには、さまざまな方法があります。 トグル動作を示すソース コード ブロックを以下に示します。
import static java.lang.Boolean.TRUE;
public class ToggleBoolean {
public static void main(String[] args) {
Boolean aBoolean = TRUE;
System.out.println("Boolean value : " + aBoolean);
// first way
System.out.println("Boolean value with ! operator: " + !aBoolean);
// second way
Boolean bool = aBoolean ? false : true;
System.out.println("Boolean value with ternary operator: " + bool);
// third way
System.out.println(aBoolean);
aBoolean ^= aBoolean;
System.out.println("Boolean value with ^= operator: " + aBoolean);
// fourth way
if (aBoolean) {
aBoolean = false;
System.out.println("Boolean value using if condition: " + aBoolean);
} else
aBoolean = true;
System.out.println("Boolean value using else condition: " + aBoolean);
}
}
Not
(!
) 演算子を使用する
オペレーター !
Java プログラミングでは、Not
演算子としても知られています。 演算子の機能は、操作を否定することです。
not
を使用すると、必要な場所で否定的なチェックが行われます。 ユースケースは、if-else
ブロック、while
の条件チェック、do-while
ループ、三項
演算子などにあります。
この演算子は、not null
のような検証が行われることになっている場合に、プログラミングの実践として使用されます。 not
演算子が等号を使用して不等号を作成し、条件をチェックする場所。
演算子は、ユーザーが 0
または 1
、true
または false
などの値を必要とする場合にのみ使用できます。
上記のコードでは、not
演算子がブール変数とともに追加され、現在の値が否定されます。 最も簡単な方法は、ブール変数を 1つのステートメントで切り替えることです。
三項条件を使用
三項演算子は、?:
演算子を使用してよく知られています。 三項演算子の構文は、expression?expression1: expression2
です。
最初の演算子は ?
です。 式が成功するクエスチョンマーク。 式は評価される必要があり、その結果は true
または false
になります。
評価後の式の結果が true
値の場合、結果は expression1
になります。 ネストは、式ステートメントでも実行できます。
結果が false
値を評価する場合、expression2
が評価されます。 上記のソース コードでは、Boolean
値が三項演算子で切り替えられます。
ビット単位の排他的 OR
(^=
) 演算子を使用する
代入演算子またはビットごとの排他的 OR
演算子は、最初のオペランドのビットごとの値を別の値と比較します。
OR
のビット マッチングは次のとおりです。
- ビット 0 がビット 1 と比較される場合: 結果は 1 です。
- ビット 0 がビット 0 と比較される場合: 結果は 0 です。
時間的には、ビットごとの OR
がブール値を切り替える最も速い方法です。 CPU 内のレジスタを使用して評価を高速化します。
if-else
ループを使用する
if-else
ループは、条件をチェックする伝統的な方法です。 状態はハンディで広く使用されています。
上記のソース コードでは、if-else
ループを使用して、ブロック ロジックを使用して値を切り替えます。
- ステートメントが
true
と評価された場合、最初のブロックが実行されます。 false
値に評価された場合、2 番目のブロックの式が評価されます。
上記は、値を切り替えるすべての可能な方法です。 評価値が得られる出力ブロックは次のとおりです。
上記の Toggle Boolean ソース コードの出力:
Boolean value : true
Boolean value with ! operator: false
Boolean value with ternary operator: false
true
Boolean value with ^= operator: false
Boolean value using else condition: true
Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.
LinkedIn