Einfache Enums definieren
Teil des Abschnitts Logik & Ablauf der Dart-Journey von Coddy — Lektion 59 von 65.
Nachdem Sie nun verstehen, was Enums sind, lernen wir, wie man sie in Dart erstellt. Die Syntax ist unkompliziert und folgt einem einfachen Muster.
Um ein Enum zu definieren, verwenden Sie das enum Schlüsselwort, gefolgt vom Namen Ihres Enums und einer Liste von Werten in geschweiften Klammern:
enum Weather {
sunny,
cloudy,
rainy
}Jeder Wert im Enum wird durch ein Komma getrennt, und laut Konvention werden Enum-Werte kleingeschrieben. Der Enum-Name selbst sollte mit einem Großbuchstaben beginnen, gemäß den Benennungskonventionen von Dart.
Sobald Sie ein Enum definiert haben, können Sie es in Ihrem gesamten Programm verwenden. Zum Beispiel könnten Sie Enums für Benutzerrollen, Spielzustände oder Prioritätsstufen erstellen:
enum Priority {
low,
medium,
high
}Das Erstellen eines Enums ist so einfach! Sie erstellen im Wesentlichen einen neuen Datentyp mit einem festen Satz möglicher Werte, der Ihren Code zuverlässiger und leichter verständlich macht.
Aufgabe
EinfachErstellen Sie ein Programm, das ein Enum für verschiedene Arten von Programmiersprachen definiert und dessen Verwendung demonstriert. Ihre Aufgabe ist es:
- Definieren Sie ein Enum namens
ProgrammingLanguagemit den folgenden Werten:dart,python,javascript,javaundcpp - Erstellen Sie eine Variable namens
currentLanguagevom TypProgrammingLanguageund weisen Sie ihr den WertProgrammingLanguage.dartzu - Erstellen Sie eine weitere Variable namens
nextLanguagevom TypProgrammingLanguageund weisen Sie ihr den WertProgrammingLanguage.pythonzu - Geben Sie die aktuelle Sprache mit dem exakten Format aus:
Currently learning: ProgrammingLanguage.dart - Geben Sie die nächste Sprache mit dem exakten Format aus:
Next to learn: ProgrammingLanguage.python - Ändern Sie
currentLanguagezuProgrammingLanguage.javascript - Geben Sie die aktualisierte aktuelle Sprache mit dem exakten Format aus:
Updated current language: ProgrammingLanguage.javascript
Ihr Programm sollte die korrekte Syntax für die Definition eines Enums mit dem Schlüsselwort enum, die Deklaration von Variablen des Enum-Typs und den Zugriff auf Enum-Werte mittels Punktnotation demonstrieren. Achten Sie darauf, die Dart-Namenskonventionen einzuhalten, bei denen Enum-Namen mit einem Großbuchstaben beginnen und Enum-Werte in Kleinschreibung geschrieben werden.
Spickzettel
Um ein Enum in Dart zu definieren, verwenden Sie das Schlüsselwort enum, gefolgt vom Namen des Enums und den Werten in geschweiften Klammern:
enum Weather {
sunny,
cloudy,
rainy
}Enum-Werte werden durch Kommas getrennt und kleingeschrieben. Enum-Namen sollten gemäß den Dart-Namenskonventionen mit einem Großbuchstaben beginnen.
Sie können Variablen vom Typ Enum erstellen und auf Werte mit der Punktnotation zugreifen:
enum Priority {
low,
medium,
high
}
Priority taskPriority = Priority.high;Probier es selbst
// TODO: Definiere hier dein ProgrammingLanguage-Enum
void main() {
// TODO: Schreibe hier deinen Code
// 1. Erstelle die Variable currentLanguage und weise ProgrammingLanguage.dart zu
// 2. Erstelle die Variable nextLanguage und weise ProgrammingLanguage.python zu
// 3. Gib die aktuelle Sprache im erforderlichen Format aus
// 4. Gib die nächste Sprache im erforderlichen Format aus
// 5. Aktualisiere currentLanguage auf ProgrammingLanguage.javascript
// 6. Gib die aktualisierte aktuelle Sprache im erforderlichen Format aus
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Ablauf
1Fortgeschrittene Listenmanipulation
Listen-Eigenschaften: first & lastListen-Status: isEmpty & isNotEmptyEine Liste umkehrenHinzufügen zu einer Liste: insertElemente aus Liste entfernen: removeWhereSuchen in einer Liste: indexOfEine Liste sortierenEine Liste mischenZusammenfassung – Listen-Organizer4Fortgeschrittene Map-Manipulation
Über eine Map iterierenPrüfen auf Schlüssel und WerteMap-Eigenschaften: keys & valuesBedingtes Hinzufügen: putIfAbsentEinträge aus einer Map entfernenVerschachtelte MapsRückblick – Inventar-Update7Fortgeschrittene Funktionen
Anonyme FunktionenFunktionen als Argumente übergebenClosures verstehenEinführung in die RekursionRekursive Funktion: CountdownRekursive Funktion: FakultätZusammenfassung – List Processor10Abschluss-Herausforderungen
Herausforderung: NotensortiererHerausforderung: VokalzählerHerausforderung: FizzBuzz2Funktionale Listenoperationen
Transformieren mit 'map'Filtern mit 'where''.toList()' verwendenBedingungen prüfen mit 'any'Bedingungen mit 'every'Suchen mit 'firstWhere'Zusammenfassung – Datenfilterung3Sets
Was ist ein Set?Ein Set erstellenHinzufügen und Entfernen in SetsPrüfen auf Elemente in einem SetEine Liste in ein Set umwandelnSet-VereinigungSet-SchnittmengeSet-DifferenzRückblick – Einzigartige Gästeliste6Grundlagen der Fehlerbehandlung
Was sind Exceptions?Der 'try-catch'-BlockExceptions mit 'on' abfangenDer 'finally'-BlockEine Exception auslösenRückblick - Sichere Division9Enumerations (Enums)
Was sind Enums?Einfache Enums definierenEnums in Variablen verwendenEnums in 'switch'-AnweisungenZusammenfassung – Ampel