Select Caseを使うと、条件式をいくつも書くことができ、Case句の数だけ分岐処理を実行することができます。
Select Caseステートメントを使うと、複数の条件判定を、スマートにプログラミングできます。
複数のCase句の条件式を満たす時は、最初に条件式を満たしたCase句だけが実行されます。最後のCase Else 句を省略すると、すべてのCase句の条件式を満たさなかった場合には、何も実行されません。
Select Case 条件判定式1 Then ' 条件1が成立した場合の処理 .......... ....... .......... Case 条件判定式2 ' 条件判定2が成立した場合の処理 .......... ....... .......... case 条件判定式3 ' 条件判定3が成立した場合の処理 .......... ....... .......... Case Else ' 省略可能 ' 上の条件式すべてを満たさなかった場合の処理 .......... ....... .......... End Select
Case 句の便利なのは、いろいろな条件判定式が書けることです。ふたつ例を挙げておきます。
' 値の範囲指定ができる Case 120 To 200 ' 複数の条件が指定できる Case 1 To 10, 20, 30, 40, Is >= 100
Select Case 句を使って、キーボードから年齢を入力すると、年齢に応じたメーッセージを表示するプログラムを作成します。
Module Module1 Sub Main() ' 変数の宣言 Dim inStr As String Dim inNum As Integer Dim msg As String ' キーボードから入力 Console.WriteLine("年齢を入力してください") inStr = Console.ReadLine() ' 文字列を整数に変換 inNum = Integer.Parse(inStr) ' 年齢を判定して処理を振分 Select Case inNum Case Is < 0, Is >= 150 ' メッセージを作成 msg = "年齢に誤りがあります" Case 0 To 19 msg = "まだ選挙権はありません" Case 20 msg = "大人の仲間入りです" Case 30, 40, 50 msg = inStr & "歳です。飲みすぎに注意" Case 21 To 59 msg = "運動していますか" Case Else msg = "健康に気をつけましょう" End Select ' 結果を表示 Console.WriteLine(msg) End Sub End Module
次回は、繰り返し処理 For Next について勉強します。
| ◆ VB 文法 目次へ◆ |
|---|
| 文字列を表示する |
| Dim 変数の宣言 |
| = 代入演算子 |
| キーボード入力 |
| & 文字列連結演算子 |
| 3つ以上の文字列を連結 |
| 文字列を改行する |
| + 加算演算子 |
| - 減算演算子 |
| * 乗算演算子 |
| / 除算演算子 |
| ¥ 整数除算演算子 |
| Mod 整数剰余演算子 |
| ^ べき乗(累乗)演算子 |
| += -= *= /= |
| \= ^= &= |
| ◆ VB 文法 目次へ◆ |
|---|
| Day() |
| Fix() |
| Format() 数値編 |
| Hour() |
| Int() |
| IsNumeric() |
| LTrim() |
| Minute() |
| Month() |
| RTrim() |
| Second() |
| Space() |
| Trim() |
| Year() |
| ◆ VB 文法 目次へ◆ |
|---|
| Math.Absメソッド |
| Math.Ceilingメソッド |
| Math.Floorメソッド |
| Math.Maxメソッド |
| Math.Minメソッド |
| Math.Roundメソッド |
| Math.Signメソッド |
| Math.Truncateメソッド |