Java でブール変数を切り替える

Rashmi Patidar 2023年10月12日
Java でブール変数を切り替える

Boolean は、boolean プリミティブをラップする Java のラッパー クラスです。 オブジェクト指向プログラミングでは、クラス は、プリミティブではなくオブジェクトを最大限に活用する方法です。

クラスの概念は、Boolean クラス内で boolean または bool プリミティブ値をバインドするソリューションを呼び起こしました。

Java でブール変数を切り替える

Boolean クラスには、TRUE 変数と FALSE 変数の 2つの静的な値しかありません。 静的メンバー変数を使用すると、Boolean は valueOf()parseBooleantoString などの静的メソッドも保持します。

ユーザーが 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 または 1true または false などの値を必要とする場合にのみ使用できます。

上記のコードでは、not 演算子がブール変数とともに追加され、現在の値が否定されます。 最も簡単な方法は、ブール変数を 1つのステートメントで切り替えることです。

三項条件を使用

三項演算子は、?: 演算子を使用してよく知られています。 三項演算子の構文は、expression?expression1: expression2 です。

最初の演算子は ? です。 式が成功するクエスチョンマーク。 式は評価される必要があり、その結果は true または false になります。

評価後の式の結果が true 値の場合、結果は expression1 になります。 ネストは、式ステートメントでも実行できます。

結果が false 値を評価する場合、expression2 が評価されます。 上記のソース コードでは、Boolean 値が三項演算子で切り替えられます。

ビット単位の排他的 OR (^=) 演算子を使用する

代入演算子またはビットごとの排他的 OR 演算子は、最初のオペランドのビットごとの値を別の値と比較します。

OR のビット マッチングは次のとおりです。

  1. ビット 0 がビット 1 と比較される場合: 結果は 1 です。
  2. ビット 0 がビット 0 と比較される場合: 結果は 0 です。

時間的には、ビットごとの OR がブール値を切り替える最も速い方法です。 CPU 内のレジスタを使用して評価を高速化します。

if-else ループを使用する

if-else ループは、条件をチェックする伝統的な方法です。 状態はハンディで広く使用されています。

上記のソース コードでは、if-else ループを使用して、ブロック ロジックを使用して値を切り替えます。

  1. ステートメントが true と評価された場合、最初のブロックが実行されます。
  2. 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 Patidar
Rashmi Patidar avatar Rashmi Patidar avatar

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

関連記事 - Java Boolean