論理式

if文は条件により異なる処理を行いました。

条件が成り立つときだけ直後に記述された文を実行し、 条件が成り立たないときはelseの後に記述された文(があればそれ)を実行します。

この条件 に対応する部分に記述する式が論理式 です。

for文、while文などでも同様に、条件を記述するところがあります。

論理値

論理式は真(true)か偽(false)かのいずれかの値をとります。 これを論理値といいます。 真偽値とも言う。

if文などで条件 を記述する部分は、 （正式には）値が論理値となる式を記述します。

論理式の値は論理値です。

比較

数値の大小の比較、等しいかどうかの比較などの結果は 真(true)か偽(false)かのいずれかの値となります。

比較の結果は論理値となるので、比較は条件として記述できます。

論理演算

～かつ～、～または～、～でない のような意味の条件もあります。

これは論理演算に対応します。a,bが論理式のとき

a && b

a と b の両方がtrueのときtrue、そうでないときfalse

a || b

a と b の少なくとも一方がtrueのときtrue、そうでないときfalse

!a

a がtrueのときfalse、falseのときtrue

boolean

基本データ型としてboolean があり、これは論理値（真偽値）を表します。

boolean型の変数を使うと論理値を記憶したり利用したりできます。

boolean p, q; p = true; q = x > 100.0; // x にはdoubleの値が入っているものとする while (q) { ... q = false; }

Cとの違い

Cでは条件の部分に整数値を書くことができ、 値が0のときfalse、それ以外のときtrueと解釈されました。

Javaではそのような記述はできません。エラーとなります。