Dartにおけるswitch-case文
メニューを表示するにはスワイプしてください
多くの条件を判定する場合、複数の if-else 文を使うのは不便になることがあります。
この例では、dayOfWeek 変数の値を確認し、一致する曜日に対してメッセージを出力します。平日の場合は曜日名を出力し、それ以外の場合は "Weekend" を出力します。
main.dart
12345678910111213141516171819202122232425262728void main() { String dayOfWeek = "Friday"; if (dayOfWeek == "Monday") { print("Today is Monday."); } else if (dayOfWeek == "Tuesday") { print("Today is Tuesday."); } else if (dayOfWeek == "Wednesday") { print("Today is Wednesday."); } else if (dayOfWeek == "Thursday") { print("Today is Thursday."); } else if (dayOfWeek == "Friday") { print("Today is Friday."); } else { print("Weekend"); } }
このコードは分かりにくく見えるかもしれませんが、switch-case 文を使うことでより読みやすくできます。
switch-case 文は、switch キーワード、値を比較する複数の case オプション、そしてどのケースにも一致しない場合に実行されるオプションの default ブロックで構成されます。
main.dart
12345678switch(expresion) { case value_1: // code to be executed case value_2: // code to be executed ............. default: // code to be executed if all cases are not matched }
-
switch(expression): 式の値を評価; -
case value_1: 式が value_1 と等しい場合、対応するコードが実行; -
default: いずれの case の値とも一致しない場合に実行。
switch-case 文は、変数の値に基づいてコードブロックを実行できる構文。変数はスイッチ変数と呼ばれる。スイッチ変数は一度だけ評価され、対応するコードブロックが実行される。
main.dart
1234567891011121314151617181920212223void main() { String dayOfWeek = "Monday"; switch (dayOfWeek) { case "Monday": print("Today is Monday."); case "Tuesday": print("Today is Tuesday."); case "Wednesday": print("Today is Wednesday."); case "Thursday": print("Today is Thursday."); case "Friday": print("Today is Friday."); default: print("Weekend"); } }
- この例では、
switch変数はdayOfWeekです。一度だけ評価され、一致するコードブロックが実行されます。 - 一致する case が実行されると、残りの case はスキップされます。
dayOfWeekがどの case にも一致しない場合、defaultブロックが実行され、この場合は"Weekend"を出力します。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 3. 章 4
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 3. 章 4