Hallo, mein Name ist Mark Nair und in diesen Lektionen wirst du lernen über Aufzählungen oder Aufzählungen oder Aufzählungen in Swift. Einschließlich Aufzählungssyntax, Begleitwerte, Rohwerte mit CaseIterable und rekursiven Aufzählungen. Laut Swift Programming Guide eine Aufzählung definiert einen gemeinsamen Typ für eine Gruppe der damit verbundenen Werte und befähigt Sie zu arbeiten mit diesen Werten typsicher in Ihrem Code. Nehmen wir also an, Sie machen ein Spiel, und Ihr Spielcharakter kann sich nach oben, unten, links und rechts bewegen aber du willst nicht diagonal gehen. Sie könnten eine Aufzählung verwenden, um diese Werte zu gruppieren und verhindern Sie die fehlerhafte diagonale Bewegung. Wenn Sie also eine Aufzählung erstellen, verwenden Sie das Schlüsselwort enum und dann fügen Sie die Definition der Aufzählung hinzu in geschweiften Klammern, so. Also das Schlüsselwort, jetzt werde ich die Aufzählung benennen. Ich werde das eine Richtung nennen, für unser Beispiel sind sie oben, unten, links und rechts. Jetzt habe ich den Namen groß geschrieben, weil dies ein neuer Typ ist. Also genau wie alles andere, wenn es sich um einen neuen Typ handelt mach es einfach groß, was den Stil angeht. Okay, jetzt geschweifte Klammern, dann passt der ganze andere Code hier hinein. Dies sind nun die Fälle, die wir in der Aufzählung verwenden werden. So beziehen wir die Werte in Beziehung. Also will ich nach oben, unten, links und rechts gehen. Jeder von denen wird also einen Fall haben, und dann auf, Nieder. Also vier Fälle. Wenn ich jetzt eine neue Variable erstelle, In diesem Fall nenne ich es einfach Charakterbewegung. Gerade jetzt eine Charakterbewegung, Swift kennt den Typ nicht. Deshalb haben wir den Fehlertyp fehlt, und es kann das nicht interpretieren. Es kann nicht wirklich aus irgendeinem Kontext geschlossen werden, was es ist. Also geben wir ihm etwas. Jetzt mache ich es gleich unserer Aufzählungsrichtung, und dann verwende ich die Punktsyntax Punkt. Und dann kann ich hier aus meinen verschiedenen Fällen auswählen. Gehen wir also einfach nach rechts. Wenn ich mir jetzt meine Charakterbewegung nach Option ansehe Wenn ich darauf klicke, kann ich verschiedene Zeichenbewegungen sehen ist von Typrichtung. Richtung natürlich, genau hier, ist, was wir definiert haben, ist unsere Aufzählung. Da Swift diese Charakterbewegung jetzt kennt ist von Typrichtung, Ich kann leicht neu zuordnen, so etwas tun. Und anstatt Richtungspunkt rechts zu sagen, Ich kann eine Abkürzung verwenden, indem ich einfach Punkt sage. Jetzt funktioniert das nur, weil Swift den Typ kennt. Swift kennt den Typ nicht, es funktioniert nicht. Hier ist ein weiteres Enum-Beispiel. In Ordnung, also habe ich Kreuz, Herz, Pik und Karo. Die normale Spielkarte. Vergrößern Sie dies ein wenig. Sie können Ihre Fälle auch so auf einer Zeile ermitteln, so müssen wir nicht die ganze Zeit case verwenden. Ich könnte es einfach durch Komma trennen. Es ist nur stilistisch, was Sie mögen. Und dasselbe gilt für Wenn meine Karte, jetzt könnte ich es definieren Ich könnte meine Karte sagen und dann Punktsyntax verwenden. Mach das einfach. Also kann ich in der Definition explizit sein. Und dabei kann ich meine Verknüpfung direkt hier verwenden. Oder wenn ich es nicht explizit sage, natürlich Ich würde sagen. So oder so, dann weiß Swift, dass meine Karte vom Typ Suits ist. Und so machen wir das. Jetzt können wir die switch-Anweisung verwenden, um zu gehen durch diese unterschiedlichen Werte. Enum der Stadt mit vier verschiedenen Städten, Urlaubszielen. Ich möchte nur vier Auswahlen. Ich will nichts mehr. Ich will nicht unendlich. Also nur Paris, Tunis, Wellington und Prag. Jetzt mache ich eine Funktion, bei der ich reisen kann und bestimmen Sie, welche Stadt und dann den Code antworten lassen zu dem, was ich in der Funktion mache. So. Also, hier ist mein Funktionsname Reisen. Ich verwende das Funktionslabel to, dann destination. Und dann ist Stadt das, was ich aus der Aufzählung verwenden werde. Jetzt werde ich diesen Parameter für dieses Argument einschalten. Also verwende ich das Schlüsselwort switch, dann destination, und dann werde ich hier meine verschiedenen Fälle einrichten. Nun, das Schöne ist, hier habe ich einen Fehler. Schalter muss erschöpfend sein, was bedeutet, dass ich gehen muss durch jeden einzelnen Fall, oder einen Standardfall haben, der sich darum kümmert aller Einzelfälle. Aber ich weiß, ich habe nur vier Fälle, Paris, Tunis, Wellington und Prag die ich hier in Zeile 21 definiert habe. Also werde ich den Swift benutzen, sehr hilfreich Fehler hier. Möchten Sie fehlende Fälle hinzufügen? Ja, ich will. Und Swift fügt sehr hilfreich den Code für hinzu fall, fall, fall für die verschiedenen. Und dann muss ich jetzt nur noch setzen in dem Code, den ich ausführen möchte wenn dieser Fall eintritt. Rufen wir die Funktion auf. Also werde ich Reisen nennen. Jetzt in meinem praktischen kleinen Popup hier Ich muss reisen, jetzt kann ich den Namen der Stadt eingeben. Wenn ich jetzt nur den Namen einer Stadt eingebe Dies wird nicht funktionieren, da es nicht auf das Enum verweist. Wenn ich tippe, sag zum Beispiel New York und ich führen diesen Code aus, kann den Typ der Zeichenfolge nicht konvertieren zum erwarteten Argument Typ der Stadt. Denn denken Sie daran, dass city der Aufzählungstyp ist Sie fragen im Funktionsparameter nach. Stattdessen ist es sehr einfach zu reisen, und dann punktiere ich einfach auf der Tastatur und ich bekomme meine Optionen genau hier. Also werde ich nach Prag gehen, und jetzt, wo ich es leite, willkommen in Prag. Punkt Tunis. Willkommen in Tunis. So erstellen, bauen wir aus, und verwenden Sie dann einen Teil der Syntax rund um Enums. Danke fürs zuschauen. In der nächsten Lektion Ich zeige Ihnen, wie Sie assoziierte Werte in E-enum verwenden.