Java/boolean のバックアップ(No.2)


Javaにおけるboolean型とは、true (真) と false (偽) の二種の値を持てる型。
== != > < で二(変)数が結合された式もboolean型となる。
また、if文やwhile文などの条件式は、最終的にはboolean型となる必要があり、そうでない場合はコンパイルエラーとなる。

よくある間違い

boolean found = true;
if (found = true) {
  中身
}
  • foundににtrueを代入しているだけになるが、コンパイルは通ってしまうことに注意。
    (なお、found がboolean以外の場合はコンパイルエラーとなるため、間違いに気づきやすい。)
  • found それ自身がboolean型 即ち条件式の結果を示すものだから、
    if(found) だけで「foundがtrueのとき」を意味する。
    • ただし、わかりやすさのために
      if (found == true)
      と書くこともある。

下のようにifの条件部分に直接放り込んだほうがトラブルが少なくて済む。

boolean found = true;
if (found) {
  中身
}