Menu
Coddy logo textTech

シンプルなEnumの定義

CoddyのDartジャーニー「論理とフロー」セクションの一部 — レッスン 59/65。

列挙型(enum)が何であるかを理解したところで、Dartでそれらを作成する方法を学びましょう。構文は明快で、シンプルなパターンに従います。

enumを定義するには、enumキーワードを使用し、その後にenumの名前、そして波括弧の中に値のリストを記述します:

enum Weather {
  sunny,
  cloudy,
  rainy
}

enumの各値はカンマで区切られ、慣習として、enumの値は小文字で記述されます。Dartの命名規則に従い、enum名自体は大文字で始める必要があります。

enumを定義すると、プログラム全体で使用できるようになります。例えば、ユーザーの役割、ゲームの状態、または優先度レベルのenumを作成できます。

enum Priority {
  low,
  medium,
  high
}

enumの作成はそれほど簡単です!本質的には、固定された値のセットを持つ新しいデータ型を作成していることになり、これによりコードの信頼性が高まり、理解しやすくなります。

challenge icon

チャレンジ

簡単

プログラミング言語のさまざまなタイプを定義するenum(列挙型)を作成し、その使用方法を示すプログラムを作成してください。タスクは以下の通りです:

  1. ProgrammingLanguage という名前のenumを定義し、次の値を持たせます:dartpythonjavascriptjavacpp
  2. ProgrammingLanguage 型の currentLanguage という変数を作成し、ProgrammingLanguage.dart という値を代入します
  3. ProgrammingLanguage 型の nextLanguage という別の変数を作成し、ProgrammingLanguage.python という値を代入します
  4. 現在の言語を次の形式で出力します:Currently learning: ProgrammingLanguage.dart
  5. 次に学習する言語を次の形式で出力します:Next to learn: ProgrammingLanguage.python
  6. currentLanguageProgrammingLanguage.javascript に変更します
  7. 更新された現在の言語を次の形式で出力します:Updated current language: ProgrammingLanguage.javascript

プログラムでは、enum キーワードを使用したenumの定義、enum型の変数の宣言、およびドット記法を使用したenum値へのアクセスのための適切な構文を示す必要があります。enum名はキャピタルケース(大文字で始まる)、enum値は小文字で記述するというDartの命名規則に従ってください。

チートシート

Dartで列挙型(enum)を定義するには、enumキーワードの後に列挙型名と波括弧で囲んだ値を記述します。

enum Weather {
  sunny,
  cloudy,
  rainy
}

列挙型の値はカンマで区切り、小文字で記述します。列挙型名は、Dartの命名規則に従い、大文字で始める必要があります。

列挙型の変数を作成し、ドット記法を使用して値にアクセスできます:

enum Priority {
  low,
  medium,
  high
}

Priority taskPriority = Priority.high;

自分で試してみよう

// TODO: ここでProgrammingLanguage列挙型を定義してください

void main() {
  // TODO: ここにコードを書いてください
  // 1. currentLanguage変数を作成し、ProgrammingLanguage.dartを代入します
  // 2. nextLanguage変数を作成し、ProgrammingLanguage.pythonを代入します
  // 3. 指定された形式で現在の言語(current language)をプリントします
  // 4. 指定された形式で次の言語(next language)をプリントします
  // 5. currentLanguageをProgrammingLanguage.javascriptに更新します
  // 6. 更新された現在の言語を指定された形式でプリントします
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

論理とフローのすべてのレッスン