Google検索エンジン

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


Javaの条件文 switch - 数値と文字の判定、条件文を抜ける方法 -

  • switch文について

    ほとんどのプログラミング言語では、条件文としてswitch文が存在します。 caseと合わせて記述するので、switch・case文とも呼ばれます。 switch文を記述すると、条件に応じて様々な処理をさせることができます。 Javaでもswitch文を記述することができ、一般にswitch文は条件判断を繰り返すif文に比べて高速に動作します。

    switch文は、人によって書き方が統一しにくかったり、if文と比べて誤動作の原因になりやすかったりするため、開発現場ではswitch文の利用を禁止しているところもあります。


    条件文switchで数値を判定する方法

    数値型の変数を比較して、条件分岐するswitch文を例に挙げて説明します。 数値型の値と等しい判定(比較)は、サンプルプログラムの様に「case 数値:」と記述します。

    ただし、switch文では、値を判断する式は、整数(int)でなければなりません。 また、if文とは異なり、nullを判定することはできません。

    サンプルソースコード
    class SWITCH1 {
    
        public static void main(String args[]) {
    
            int num = 0;
    
            switch (num) {
            case 0:
            case 1:
                System.out.println("numは0または1");
                break;
    
            case 2:
                System.out.println("numは2");
                break;
    
            case 3:
                break;
    
            default:
                System.out.println(num);
                break;
            }
        }
    }
    

    上記のJavaプログラムを実行すると、「numは0または1」が表示されます。 numの値を変えて、動作を確認してみてください。 処理の流れとしては、case分節中の処理をして「break;」で処理を抜けています。 case分節中に「break;」を記述するのを忘れると、そのまま次のcase分節中を処理してしまうので注意が必要です。


    条件文switchで文字を判定する方法

    switch文で文字を判定するときは、サンプルプログラムの様に「case '文字':」と記述します。 値を「'」で囲む他は、数値型と全く同じです。

    switch文では、値を判断する式は、文字(char)でなければなりません。 文字列(String)は、判定できません。 また、if文とは異なり、nullを判定することはできません。

    サンプルソースコード
    class SWITCH2 {
    
        public static void main(String args[]) {
    
            char moji = 'a';
    
            switch (moji) {
            case 'a':
            case 'b':
                System.out.println("mojiはaまたはb");
                break;
    
            case 'c':
                System.out.println("mojiはc");
                break;
    
            case 'd':
                break;
    
            default:
                System.out.println(moji);
                break;
            }
        }
    }
    
    

    上記のJavaプログラムを実行すると、「mojiはaまたはb」が表示されます。 mojiの値を変えて、動作を確認してみてください。 case分節中の処理をして「break;」で処理を抜けます。 case分節中に「break;」を記述するのを忘れると、そのまま次のcase分節中を処理してしまうので注意が必要です。


Javaプログラミング講座(入門編)
おすすめBTOパソコン通販サイト
  • デスクトップPC(ビジネス向け・クリエイター向け・ゲーム向け)、ノートPC、パーツ、周辺機器、ソフト(OS・ゲーム・セキュリティなど)幅広い分野の商品を扱っています。販売価格の幅が広く、品揃えも充実しています。
  • 「FRONTIERダイレクトストア」は、自社工場で製造したFRONTIERブランドのパソコンを日本全国に販売する株式会社KOUZIROのインターネットショッピングサイトです。カスタマイズ可能なBTOゲームパソコンも販売しています。
オンライン書店
  • ライブドアブックスを利用すると、わざわざ書店で本を探さなくてもインターネットで本を検索して購入することができます。
  • 注文してから、本が早く届くオンライン書店として定評があります。送料250円で、1500円以上のお買い上げで送料が無料です。
  • eBOOKOFF(イーブックオフ)は、コミック、書籍、CD、ゲーム、DVDなどを販売する日本最大級のオンライン中古書店です。
  • 全巻漫画.comは、日本最大級の古本全巻セット在庫量を誇るオンライン中古書店です。10,000以上の購入で送料が無料になります。