Google検索エンジン

トップページ » Java入門編 » if(条件文)を使用する


Javaの条件文 if - 数値・null・文字列比較・条件文を抜ける方法 -

  • if文について

    ほとんどのプログラミング言語では、条件文としてif文が存在します。 Javaでもif文を記述することができ、if文は極めて使用頻度が高いといえます。 if文を記述すると、条件に応じて様々な処理をさせることができます。

    このページには、if文中における処理の抜け方を掲載していますが、途中で処理を抜けたり終了させたりするのではなく、if文を記述して処理させないようにするのが普通です。


    条件文ifでの数値比較

    数値型の変数を比較して、条件分岐するif文を例に挙げて説明します。 数値型の値と等しい(比較)は演算子「==」を使用して記述します。 演算子についてはこちら

    サンプルソースコード
    class HIKAKU {
       public static void main(String args[]) {
    
          nt number = 10;
    
          if (number == 9) {
             System.out.println("numberは9です。");
          } else if(number == 10){
             System.out.println("numberは10です。");
          } else {
             System.out.println("numberは不明です。");
          }
       }
    }
    

    上記のJavaプログラムを実行すると、「numberは10です。」が表示されます。 numberは「int number = 10;」により、値「10」を保持していますので、「number == 9」には該当しません。 次の「number == 10」に該当しますので、該当するブロックの「numberは10です。」が表示されます。 「numberは10です。」を表示後、if文を抜けますのでelse文にある「numberは不明です。」は表示されません。


    条件文ifでのnull比較

    変数がnullの場合、nullを比較・判定して、条件分岐するif文を例に挙げて説明します。 nullと等しい(比較)は「==」を使用して記述します。

    サンプルソースコード
    class HIKAKU {
       public static void main(String args[]) {
    
          String str = null;
    
          if (str == null) {
             System.out.println("strはnullです。");
          } else {
             System.out.println("strはnullではありません。");
          }
       }
    }
    

    上記のJavaプログラムを実行すると、「strはnullです。」が表示されます。 String型がnullの場合を例に挙げていますが、他の型でもnullを判定する場合は同様に記述します。


    条件文ifでのString(文字列)比較

    String(文字列)型の変数を比較して、条件分岐するif文を例に挙げて説明します。 String(文字列)型の文字列と等しい(比較)は「equalsを使用して記述します。

    サンプルソースコード
    class HIKAKU {
       public static void main(String args[]) {
    
          String str = "かきくけこ";
    
          if (str.equals("あいうえお") ) {
             System.out.println("strは「あいうえお」です。");
          } else if (str.equals("かきくけこ") ) {
             System.out.println("strは「かきくけこ」です。");
          }
       }
    }
    

    上記のJavaプログラムを実行すると、「strは「かきくけこ」です。」が表示されます。 尚、変数「str」がnullの場合はエラーが発生します。 「str」がnullの可能性がある場合は、先に「==」でnullを判定します。 また、String型を「==」で判定すると、文字列の判定とは異なる結果(オブジェクトの比較)が返されます。


    条件文ifを抜ける(処理を抜ける)

    if文中において、処理を途中で抜ける場合は、「return」を記述します。 ただし、途中で処理を抜けたり終了させたりするのではなく、if文を記述して処理させないようにするのが普通です。

    サンプルソースコード
    class HIKAKU {
       public static void main(String args[]) {
    
          String aaa = "あいうえお";
          String bbb = "かきくけこ";
    
          if (!aaa.equals(bbb) ) {
             System.out.println(aaa);
             System.out.println(bbb);
             if(aaa.equals("あいうえお")){
                return;
             }
             System.out.println("さしすせそ");
          }
       }
    }
    

    上記のJavaプログラムを実行すると、「さしすせそ」が表示されず、「return;」で処理を抜けていることが分かります。 if文のみではなく、処理自体を抜けます。(呼び出し元へ返る) 条件文switchやループ文では「break」を記述することができますが、条件文ifでは「break」を記述することはできません。


Javaプログラミング講座(入門編)
it-manual.comのウェブサイト
書籍の紹介
  • Java ポケットリファレンス
    Java ポケットリファレンス
    発売:2011/03/25
    定価:2,709円
    著者:高江 賢
    出版:技術評論社
    内容:ベーシックだけど忘れてしまいがちな情報をコンパクトなサイズに凝縮し、「逆引き形式で目的からすぐ探せる」「サンプルコードを見ながら具体的な実装のイメージがつかめる」特徴で現場に欠かせない1冊です。
  • プログラマが知るべき97のこと
    プログラマが知るべき97のこと
    発売:2010/12/18
    定価:1,995円
    著者:和田 卓人
    出版:オライリージャパン
    内容:世界中で活躍するプログラマによる97本のエッセイを収録した書籍です。プログラミングにおいてもっとも重要な事柄は何か、バージョン管理やテスティング、設計原則とコーディングテクニック、また腕を磨くための勉強法などについて、経験豊かなプログラマが自らの体験を踏まえて解説します。
  • Effective Java 第2版 (The Java Series)
    Effective Java
    発売:2008/11/27
    定価:3,780円
    著者:Joshua Bloch他
    出版:ピアソンエデュケーション
    内容:著者のGoogle, Sun Microsystemsにおけるソフトウェア開発で得た知識・経験をまとめています。Javaプログラミングをする全てのSE必読の書籍です。
  • プログラミング言語Java (The Java Series)
    プログラミング言語Java
    発売:2007/04
    定価:4,410円
    著者:ケン・アーノルド他
    出版:ピアソンエデュケーション
    内容:Javaの原典と呼べる本です。変数、コメント、定数、制御、クラス、配列、文字列、例外処理までわずか30ページで進むので、Javaを学習し始めたばかりの方には少し難しいかもしれません。厚さの割に価格も手ごろなので、Java使いなら本棚に置いておきたい本です。
  • なぜ、あなたはJavaでオブジェクト指向開発ができないのか―Javaの壁を克服する実践トレーニング
    なぜ、あなたはJavaでオブジェクト指向開発ができないのか
    発売:2004/12
    定価:2,289円
    著者:小森 裕介
    出版:技術評論社
    内容:Javaのソフトウェア開発を中心に事業を発展させてきたSMG社の新人教育セミナーを加筆・書籍化したもので、大卒の新人に対して、ゼロからJava言語を教えてきた実績をフィードバックしています。