0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

switch文について

switch文とは?

Javaには条件分岐処理というシステムがあります。

代表的な文として「if-else文」があります。

今回は、もう一つの条件分岐処理の「switch文」について説明致します。

switch文の構造

以下のコードをご覧ください。

switch(式){

    case 定数1: //式の結果が定数1と一致したとき、以下の処理が行われる。
     処理文1;

    case 定数2: //式の結果が定数2と一致したとき、以下の処理が行われる。
    処理文2;

    default: //上記どのcaseにも一致しなかったとき、以下の処理文が実行される。

    defaultの処理文;
}

switch文は、式を評価した結果caseで指定した定数とを比較し、
一致した場合にそのcase以降に記述した処理文を実行します。

switch文のデータ型

switch文の式の評価は、データ型として

・char
・byte
・short
・int(およびそのラッパークラス)
・enum
・String

のいずれかの値である必要があります。

それ以外の型が指定されるとコンパイルエラーとなります。
また、式の評価がnullの場合、コンパイルは成功しますが、実行時にNullPointerException例外
発生します。

break文

case文で式を評価しtrueになった場合、case以下の処理が全て行われてしまいます。

もしswitch文を抜けたい場合はbreak文を記述します。

case 定数1: 
    処理文1;
    break;

case 定数2: 
    処理文2;

このコードの場合、もし「case 定数1」でtrueになった場合、処理文1が実行され、「case 定数2」の式は
評価されず、switch文を抜ける流れとなります。

まとめ
・switch文は、式を評価した結果とcaseで指定した定数とを比較し、
一致した場合にそのcase以降に記述した処理文を実行する。
・switch文の式の評価は、データ型として【char,byte,short,intおよびそのラッパークラス),enum,String】
のいずれかの値である必要がある。
・switch文を抜けたい場合はbreak文を記述する。

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?