HOME技術JAVAJAVAの条件分岐:switch文

JAVAの条件分岐:switch文

if文と並ぶ条件分岐の構文として、もう一つ、switch文があります。

if文が条件が真偽で処理を変える2択(elseifを付ければ複数の選択肢を持たすことができるが)であるのに対し、switch文は条件の結果が2択ではなく複数の選択肢がある場合に用いると、if文よりも簡潔に書くことができます。

switch文

switch文は以下のように書きます。

switch ( 式 ) {
case 定数1:
処理1
break;
case 定数2:
処理2
break;
default:
処理3
}

「式」の結果が「定数」と同じであるとき、そこに書かれている「処理」を実行します。
breakは「switch文から抜ける」という意味です。
各処理にbreakを書かない場合は、引き続き次に書かれている処理を実行します。
「定数#:」は「ラベル」と言って、プログラム内の目印の役割を果たしますが、それ以上の意味はありません。
switch文の場合はcaseとラベルを組み合わせることで、式の結果ラベルに飛ばす、という処理を行うことができます。
「default:」には、提示した定数に当てはまらなかった場合の処理を書きます。default:は省くことができます。

int Hensu = 1
switch( Hensu ){
case 1:
System.out.println ( “1番目の処理” );
break;
case 2:
System.out.println ( “2番目の処理” );
break;
default:
System.out.println ( “その他の処理” );
}

式に設定できるデータ型は以下の6つに決まっています。

  • byte
  • char
  • short
  • int
  • enum
  • String

式に等号(==)、不等号(<>)を使うことはできません。
四則演算等はできるので、「Hensu + Hensu2」といったような書き方をすることはできます。

「case 定数:」以下に何も書かずに次のcaseを書くこともできます。
これは、「1と2と3の場合は処理Aをさせる」というような場合に使います。

switch ( Hensu ){
case 1:
case 2:
case 3:
System.out.println( “1~3の場合の処理” );
break;
default:
System.out.println( “その他の処理” );
}

関連記事

JAVAのパッケージ

パッケージとはクラスのさらに上の概念です。 あるパッケージに属するクラスは、同じ名称であっても別のパッケージのクラスとは別物として扱われます。 「aaa」パッケージの「cde」というクラスと、 「bb…続きを読む

JAVAで変数を使う:変数宣言と変数の型

変数とは、プログラム内で利用される「値」を入れるための「器」です。 変数は一定の規則に従えば、任意の名前を付けることができます。 変数はどのように使うのかというと、例えば、Hensuという名前を変数を…続きを読む

JAVAのループ処理:for文

JAVAにおけるループ処理の一つとして、while文のほかに、for文というのがあります。 これはある条件を満たしている場合は決められた処理を繰り返すというところまではwhile文と一緒ですが、条件を…続きを読む

JAVAのメソッド:println()

→関連ページ(Eclipseを使ってJAVAで”Hello World”を表示する) →関連ページ(JAVAのメソッドとは) ここからは「Hello World」を表示させたメ…続きを読む

JAVAでメソッドをつくる

JAVAには既に存在するメソッドのほかに、自分でメソッドを作ることができます。 自分でメソッドを作る際のルールは以下の通りです。 修飾子 戻り値の型 メソッド名(引数) { 処理 } 修飾子とは 修飾…続きを読む

JAVAの多次元配列

多次元配列とは、配列変数の要素の表現がHareitsu[0]であるのに対し、Hairetsu[0][0]と表すことができる配列変数です。 多次元配列の用途 多次元配列を使うと、ゲームで言うならばマップ…続きを読む

JAVAのメソッドとは

→前回(Eclipseを使ってJAVAで”Hello World”を表示する) 前回は”Hello World”という文字列をコンソールに表示しました。…続きを読む

JAVAの予約語

プログラム言語で予め使われている名前、たとえば変数の型を示す名前などは、変数名やクラス名として宣言することができません。これらの名前を予約語といいます。 予約語一覧 abstract(修飾子) ass…続きを読む

JAVAのエスケープシーケンス

例えば、以下のように、ダブルクォーテーションを出力したい場合には、どのように書けばいいでしょうか。 System.out.println(“””); 上のように書い…続きを読む

JAVAのローカル変数とグローバル変数

変数には、その有効範囲が定められています。 この有効範囲のことをスコープと言います。 スコープ内では変数を利用できますが、スコープ外ではその変数は存在しないことになり、利用することができません。 ロー…続きを読む