Enum-Werte und Ordinalzahlen
Iterieren und indizieren
Enum-Werte und Ordinalzahlen ist eine kostenlose Kotlin Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Kotlin Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Kotlin Academy-Kurs umfasst insgesamt 4 Lektionen.
Alle Konstanten auflisten
Die generierte Funktion values() gibt ein Array mit allen Konstanten in der Reihenfolge ihrer Deklaration zurück.
enum class Suit { HEARTS, CLUBS }
fun main() {
for (s in Suit.values()) println(s)
}entries statt values()
Modernes Kotlin bevorzugt entries. Es gibt eine unveränderliche Liste zurück und vermeidet die Erstellung eines neuen Arrays bei jedem Aufruf.
enum class Suit { HEARTS, CLUBS }
fun main() {
for (s in Suit.entries) println(s)
}Die Eigenschaft ordinal
Jede Konstante besitzt ein ordinal: ihre nullbasierte Position in der Reihenfolge der Deklaration.
enum class Size { S, M, L }
fun main() {
println(Size.S.ordinal)
println(Size.L.ordinal)
}Konstanten zählen
Verwenden Sie entries.size, um die Anzahl der Konstanten zu ermitteln.
enum class Day { MON, TUE, WED }
fun main() {
println(Day.entries.size)
}Mit einem Index iterieren
Kombinieren Sie Ordinalwerte oder Indizes, um jede Konstante zu nummerieren.
enum class Color { RED, GREEN, BLUE }
fun main() {
for (c in Color.entries) {
println("${c.ordinal}: $c")
}
}Zusammenfassung zu valueOf und name
Kombinieren Sie valueOf() (String zu Konstante) mit name (Konstante zu String), um eine Hin- und Rückkonvertierung zu ermöglichen.
enum class Status { ON, OFF }
fun main() {
val s = Status.valueOf("ON")
println(s.name)
}Konstanten abbilden
Da entries eine Liste ist, können Sie Sammlungsfunktionen wie map verwenden.
enum class Coin(val cents: Int) { PENNY(1), DIME(10) }
fun main() {
val names = Coin.entries.map { it.name }
println(names)
}Nach einer Eigenschaft suchen
Durchsuchen Sie Konstanten mithilfe von first oder find anhand einer Eigenschaft.
enum class Coin(val cents: Int) { PENNY(1), DIME(10) }
fun main() {
val c = Coin.entries.first { it.cents == 10 }
println(c)
}Ordinalwerte sind anfällig
Vermeiden Sie es, ordinal-Werte langfristig zu speichern. Durch das Umsortieren von Konstanten ändern sich die Ordinalwerte, wodurch gespeicherte Daten unbrauchbar werden können. Speichern Sie stattdessen name.
enum class Level { LOW, HIGH }
fun main() {
println(Level.HIGH.name)
}Die nächste Konstante über den Ordinalwert
Sie können mithilfe von Ordinalwerten und der Liste entries zwischen Konstanten navigieren.
enum class Gear { FIRST, SECOND, THIRD }
fun next(g: Gear): Gear {
val all = Gear.entries
return all[(g.ordinal + 1) % all.size]
}
fun main() {
println(next(Gear.FIRST))
}Alles zusammenführen
Fassen Sie ein Enum zusammen, indem Sie darüber iterieren und sowohl name als auch ordinal auslesen.
enum class Planet { MERCURY, VENUS, EARTH }
fun main() {
Planet.entries.forEach {
println("${it.ordinal} -> ${it.name}")
}
}Kurze Überprüfung
Testen Sie Ihr Verständnis von Enum-Werten und Ordinalwerten.
Zusammenfassung
Sie haben gelernt, Konstanten aufzulisten und zu indizieren:
entries(bevorzugt) undvalues()listen alle Konstanten auf.ordinalist die nullbasierte Position in der Deklaration.entriesist eine Liste, daher funktionieren Sammlungsfunktionen damit.- Speichern Sie für dauerhafte Daten vorzugsweise
namestattordinal.
enum class Size { S, M, L }
fun main() {
println(Size.entries.size)
println(Size.M.ordinal)
}Häufig gestellte Fragen
Ist die Lektion „Enum-Werte und Ordinalzahlen“ kostenlos?
Ja — der vollständige Text von „Enum-Werte und Ordinalzahlen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Kotlin Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Kotlin Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Enum-Werte und Ordinalzahlen“?
Iterieren und indizieren Du übst Kotlin Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Kotlin Academy zu starten?
Keine Vorkenntnisse erforderlich. Kotlin Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „Enum-Werte und Ordinalzahlen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Kotlin Academy-Lektion Code schreiben und ausführen?
Ja. Jede Kotlin Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Enums definieren
- Enum-Eigenschaften und -Methoden
- Enums mit when
- Enum-Werte und Ordinalzahlen