Dev Study
Go コース

14. switch 文 — fallthrough なしと条件式 switch

switch は値による分岐を読みやすく書くための構文です。Go の switch は他の多くの言語と違い、各 case の最後で自動的に switch を抜けます。break を書く必要はありません。意図的に次の case へ処理を続けたいときだけ、明示的に fallthrough と書きます。これにより break の書き忘れによるバグが起きません。

case には複数の値をカンマで並べられ、case 0, 1, 2: のように書けます。switch には初期化付き if と同じく初期化文も付けられます。どの case にも当てはまらないときは default が実行されます。

さらに、switch の後ろに評価する値を書かない「条件式 switch」も使えます。switch { case x > 10: ... } のように各 case に bool の条件を書く形で、if-else if-else を読みやすく整理したいときに便利です。下のコードで両方の形を確認してください。

▶ サンプルコードを実行してみよう(自由に書き換えてOK)

Go
公式ドキュメントで詳しく ↗