List vs. MutableList
Teil des Abschnitts Grundlagen der Kotlin-Journey von Coddy. Lektion 67 von 93.
Bisher hast du mit einzelnen Variablen gearbeitet, die einzelne Werte enthalten. Aber was ist, wenn du eine Sammlung von Elementen speichern musst, etwa eine Liste von Namen oder eine Reihe von Zahlen? Hier kommen Listen ins Spiel.
Kotlin bietet zwei Listentypen: List und MutableList. Der wesentliche Unterschied besteht darin, ob du die Liste nach ihrer Erstellung ändern kannst.
Eine List ist schreibgeschützt. Ihre Schnittstelle stellt keine Operationen zum Hinzufügen, Entfernen oder Ersetzen von Elementen bereit. Dies ist keine Garantie für tiefe Unveränderlichkeit: Dasselbe zugrunde liegende veränderbare Objekt könnte über eine andere Referenz geändert werden:
val fruits = listOf("Apple", "Banana", "Cherry")
val numbers = listOf(1, 2, 3, 4, 5)Eine MutableList ermöglicht Änderungen. Du kannst neue Elemente hinzufügen, vorhandene entfernen oder Werte aktualisieren:
val fruits = mutableListOf("Apple", "Banana")
fruits.add("Cherry") // Enthält jetzt: Apple, Banana, CherryVerwende listOf(), wenn sich deine Daten nicht ändern sollen, und mutableListOf(), wenn du Flexibilität brauchst. Diese Unterscheidung hilft, versehentliche Änderungen zu verhindern, und macht die Absicht deines Codes klarer.
Aufgabe
MittelErstelle eine schreibgeschützte Liste namens colors, die drei Zeichenfolgen enthält: "Red", "Green" und "Blue".
Erstelle anschließend eine veränderbare Liste namens numbers, die mit zwei Ganzzahlen beginnt: 10 und 20.
Füge der Liste numbers den Wert 30 hinzu.
Gib schließlich beide Listen in dieser Reihenfolge in separaten Zeilen aus:
- Die Liste
colors - Die Liste
numbers
Probier es selbst
fun main() {
// TODO: Erstelle eine schreibgeschützte Liste namens 'colors' mit "Red", "Green", "Blue"
// TODO: Erstelle eine veränderbare Liste namens 'numbers' mit 10 und 20
// TODO: Füge 30 zur numbers-Liste hinzu
// TODO: Gib beide Listen in separaten Zeilen aus (zuerst colors, dann numbers)
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorErweiterte ZuweisungVergleichsoperatorenRückblick – Einfache Mathematik7Grundlegende Ein-/Ausgabe
println-FunktionString-VorlagenReadLine-EingabeTypkonvertierungWiederholung – Jahre bis zur RenteWiederholung – Wahr oder falsch10Funktionen
Eine Funktion deklarierenParameter und ArgumenteRückgabewerteBenannte ArgumenteStandardwerteFunktionen mit einem AusdruckRückblick – Sigma-FunktionRückblick – Validierungsfunktion2Variablen
Val vs VarTypinferenzZahlenStringBooleanNamenskonventionenRückblick – Variablen initialisieren5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Logische Operatoren Teil 3Ternär mit If-AusdruckWiederholung – Einfache Logik8Rechner zum Aufteilen der Rechnung
WillkommensnachrichtEingaben erfassen11FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Funktion3Nullbarkeit
Was ist Null-Sicherheit?Nullable-TypenOperator für sicheren AufrufElvis-OperatorGrundlagen der FunktionsaufgabeAssertion auf Nicht-NullRückblick – Sicherer Zugriff6Entscheidungen treffen
If-AnweisungIf - ElseIf als AusdruckWhen-AusdruckWhen mit BereichenRückblick - Einfacher Taschenrechner9Schleifen
For-SchleifeWhile-SchleifeDo-While-SchleifeBreakContinueBereiche in SchleifenVerschachtelte SchleifeRückblick – FakultätRückblick – Dynamische Eingabe12Grundlagen von Listen
List vs. MutableListAuf Elemente zugreifenListen verändernListenmethodenPaar und TripleWiederholung – ProduktlisteWiederholung – Umgekehrte ListeÜbe selbstständig: Kotlin-Playground