Javaのboolean型の使い方・Booleanとbooleanの違い

- システム
エンジニア - Javaのboolean型はどのように使用するのでしょうか。
- プロジェクト
マネージャー - boolean型とは、true/falseを表現する型です。if文やwhile文の条件判定などでよく使用します。
Javaのboolean型の使い方について
今回は、Javaのboolean型の使い方について説明します。boolean型とは、true/falseを表現する型です。if文やwhile文の条件判定などでよく使用します。
Javaのboolean型の使い方に興味のある方はぜひご覧ください。
基本的な使い方
boolean型の基本的な使い方を紹介します。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
public class Main { public static void main(String[] args) throws Exception { int val = 1; boolean bool1 = (val == 1); // if文の条件判定 if (bool1) { System.out.println(""条件判定はtrue""); } else { System.out.println(""条件判定はfalse""); } // while文の条件判定 while (val <= 5) { System.out.println(""val:"" + val); val++; } } } |
実行結果は以下のようになります。
1 2 3 4 5 6 |
条件判定はtrue val:1 val:2 val:3 val:4 val:5 |
if文やwhile文で使用する場合、条件文が成立すればtrue、成立しなければfalseを返します。
このように、Javaのboolean型で、true/falseを表現できます。
true・falseの反転
Javaでtrue・falseを反転するには、!演算子を使用します。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
public class Main { public static void main(String[] args) throws Exception { // 初期化 boolean bool1 = true; boolean bool2 = false; // 反転 bool1 = !bool1; bool2 = !bool2; System.out.println(bool1); System.out.println(bool2); } } |
実行結果は以下のようになります。
1 2 |
false true |
このように、Javaでtrue・falseを反転するには、!演算子を使用します。
初期値
Javaのboolean型の初期値には何が入っているのでしょうか。
クラス変数とローカル変数にboolean型を宣言して、値を代入しないまま表示してみます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 |
public class Main { // クラス変数として宣言 static boolean bool1; public static void main(String[] args) throws Exception { // ローカル変数として宣言 boolean bool2; System.out.println(""bool1:"" + bool1); // false // System.out.println(""bool2:"" + bool2); // コンパイルエラー:variable bool2 might not have been initialized } } |
実行結果は以下のようになります。
1 |
bool1:false |
クラス変数の初期値はfalseということが分かります。
また、ローカル変数として宣言した場合は、初期値を代入しないとコンパイルエラーになります。
Booleanとbooleanの違い
JavaのBooleanとは、プリミティブ型であるbooleanの値をオブジェクトにラップしたクラスです。クラスメソッドが利用できます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 |
public class Main { public static void main(String[] args) throws Exception { // valueOfメソッドでboolean型として返す Boolean bool = Boolean.valueOf(true); // toStringメソッドでStringに変換 String str = Boolean.valueOf(false).toString(); System.out.println(bool); System.out.println(str); } } |
実行結果は以下のようになります。
1 2 |
true false |
上記以外にもさまざまなクラスメソッドがあります。
このように、JavaのBooleanでは、さまざまなクラスメソッドを利用できます。
文字列からboolean型への変換
JavaのBooleanクラスでは、文字列からboolean型を取得できます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
public class Main { public static void main(String[] args) throws Exception { String str1 = ""false""; System.out.println(""Boolean.parseBoolean:"" + Boolean.parseBoolean(str1)); // false System.out.println(""Boolean.valueOf:"" + Boolean.valueOf(str1)); // false System.out.println(""Boolean.getBoolean:"" + Boolean.getBoolean(str1)); // false System.out.println(""""); String str2 = ""true""; System.out.println(""Boolean.parseBoolean:"" + Boolean.parseBoolean(str2)); // true System.out.println(""Boolean.valueOf:"" + Boolean.valueOf(str2)); // true System.out.println(""Boolean.getBoolean:"" + Boolean.getBoolean(str2)); // false System.out.println(""""); // プロパティの設定 System.setProperty(""true"", ""true""); System.setProperty(""false"", ""true""); System.out.println(""Boolean.getBoolean:"" + Boolean.getBoolean(str1)); // true System.out.println(""Boolean.getBoolean:"" + Boolean.getBoolean(str2)); // true } } |
実行結果は以下のようになります。
1 2 3 4 5 6 7 8 9 10 |
Boolean.parseBoolean:false Boolean.valueOf:false Boolean.getBoolean:false Boolean.parseBoolean:true Boolean.valueOf:true Boolean.getBoolean:false Boolean.getBoolean:true Boolean.getBoolean:true |
parseBooleanメソッド、valueOfメソッドは文字列が””true””ならばtrue、文字列が””false””ならばfalseを返します。
getBooleanメソッドは、指定された引数のSystemプロパティを取得し、それを””true””と比較した結果を返します。
このように、JavaのBooleanクラスでは、文字列からboolean型を取得できます。
- システム
エンジニア - Javaのboolean型の基本的な使い方やBooleanとbooleanの違いについてもよく理解できました。
- プロジェクト
マネージャー - boolean型の基本的な使い方が理解できたら、実際にソースコードで書いてみましょう。
まとめ
いかがでしたでしょうか。Javaのboolean型の使い方について説明しました。boolean型とは、true/falseを表現する型です。if文やwhile文の条件判定などでよく使用します。
また、プリミティブ型であるbooleanの値をオブジェクトにラップしたBooleanクラスについても紹介しました。
ぜひご自身でソースコードを書いて、理解を深めてください。
FEnetJava・Javaコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。

-
スマホアプリから業務系システムまで
スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。
-
充実した研修制度
毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。
-
資格取得を応援
スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。
-
東証プライム上場企業グループ
オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。


Java新着案件New Job
官公庁向け業務システム開発/Java/東京都千代田区/【WEB面談可】/テレワーク
月給39万~44万円東京都千代田区(永田町駅)販売管理システム開発/Java/東京都中央区/【WEB面談可】/テレワーク
月給49万~55万円東京都中央区(京橋駅)生命保険会社向けシステム開発/Java/東京都千代田区/【WEB面談可】/テレワーク
月給42万~48万円東京都千代田区(大手町駅)社会保険システムのパッケージ開発/Java/東京都港区/【WEB面談可】/テレワーク
月給42万~48万円東京都港区(新橋駅)金融機関向けシステム更改/Java/東京都江東区/【WEB面談可】/テレワーク
月給46万~51万円東京都江東区(豊洲駅)大手通信会社者向けWebシステム改修/Java/東京都港区/【WEB面談可】/テレワーク
月給42万~48万円東京都港区(品川駅)