Codegym University コースの一部としてのメンターによる講義の抜粋。フルコースにお申し込みください。


「こんにちは、アミーゴ。新しいデータ型についてお話しましょう。ブール値ですこの型の変数は、truefalseの 2 つの値のみを取ることができます。

「どうやって使うの?」

「この型は多くの場所で暗黙的に使用されます。加算演算で数値が生成されるのと同じように、比較の結果は boolean になりますいくつかの例を次に示します。」

コード 説明
1
boolean m;
これら 2 つの式は同等です。ブール変数のデフォルト値はfalseです。
2
boolean m = false;
3
if (a > b)
    System.out.println(a);
比較の結果 ( trueまたはfalse ) が変数に割り当てられますm式がtrueと評価される場合、条件は満たされます。
4
boolean m = (a > b);
if (m)
    System.out.println(a);
5
boolean m = (a > b);
if (m == true)
    System.out.println(a);
論理 (ブール) 変数をtrueまたはfalseと比較する必要はありません。比較の結果は、他の変数と一致するブール値になります。たとえば、true == true は true と評価されます。 true == false は false と評価されます
6
boolean m = (a > b);
if (m)
    System.out.println(a);

「その他の例:」

コード 説明
1
public boolean isALessThanB (int a, int b)
{
    if (a < b)
        return true;
    else
        return false;
}
このメソッドは、数値 a が数値 b より小さいことを検証します。

以下に 4 つの同等の比較を示します。最後のものが最もコンパクトで正確です。常にコンパクトな表記法を使用するようにしてください。

2
public boolean isALessThanB (int a, int b)
{
   boolean m = (a < b);
    if (m)
        return true;
    else
        return false;
}
3
public boolean isALessThanB (int a, int b)
{
    boolean m = (a < b);
    return m;
}
4
public boolean isALessThanB (int a, int b)
{
    return a < b;
}

「0<a<b と書きたい場合はどうすればよいでしょうか?」

「Java には 3 つのオペランドを取る比較演算子がありません。そのため、 (0<a) AND (a<b)のように行う必要があります。」

「ANDという単語を書きますか?」

「待ってください。説明します。Java には 3 つの論理演算子があります。ANDORNOT です。これらを使用して、さまざまな複雑さの条件を構築できます。これらの演算子はブール式でのみ使用できます。したがって、( a+1) AND (3)ですが、(a>1)AND (a<3) も問題ありません。」

NOT演算子は単項です。右側の式にのみ影響します。2 つの数値間の乗算記号というよりは、負の数値の前のマイナス記号に似ています。」

「ブール(論理) 変数に対してさまざまな操作を実行できます。」

"どのような?"

「見てみましょう:」

論理演算子 Java 記法 表現 結果
&& 本当 && 本当 真実
true &&  false 間違い
 &&  間違い
&& 間違い
また || 本当|| 真実 真実
本当|| 間違い 真実
|| 真実 真実
|| 間違い 間違い
いいえ 真実 間違い
間違い 真実
一般的な組み合わせと表現 んん 間違い
メートル || !m 真実
!(a && b) !a || !b
!(a || b) !a && !b

「もっと例を挙げてもらえますか?」

"もちろん:"

Java 記法 論理表記法
(a<3) && (a>0) (a < 3) かつ (a>0)
(a>10) || (a<100) (a>10) または (a<100)
(a<b) && (!(c<=d)) (a<b) AND (NOT (c<=d))

「それでは、いくつかのタスクを実行してください。」