T-08 Listen¶
Listen sind wie Behälter um mehrere Werte oder Variable zu speichern.
Du kannst eine Liste mit Zahlen z.B. wie folgt definieren:
val a = List(1, 2, 3)
println(a)
oder eine Liste mit Namen (String-Werten):
val names = List("Hans", "Fred", "Caroline")
Um auf ein Listen-Element zuzugreifen kannst du folgenden Befehl brauchen:
names(0)
// Hans
Beachte: Die Listen-Elemente starten immer bei 0, also das erste Element ist an der Position 0.
Die Grösse einer Liste kannst du mit length herausfinden:
names.length
// 3
Mit dem foreach-Befehl kannst du z.B. die einzelnen Listen-Elemente ausgeben:
names.foreach(element => println(element))
oder auch mit einer einfachen for Schleife:
for( a <- names ){
println(a);
}
Mit der Methode filter kann man bestimmte Listen-Elemente rausfiltern.
Beispiel: Du willst nur die geraden Zahlen ausgeben:
val zahlen = List(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val geradeZahlen = zahlen.filter(x => x % 2 == 0)
// List(2, 4, 6, 8, 10)
oder mit dem obigen Beispiel mit den Namen, wenn du nur bestimmte Namen in einer neuen Liste haben möchtest, kannst du folgendes schreiben:
val neueNamen = names.filter(aName => aName.equals("Fred") || aName.equals("Caroline"))
Mit der map Methode kannst du eine Funktion auf die einzelnen Listen-Elemente anwenden.
Beispiel: Du möchtest eine neue Liste haben mit der Quadrat Zahl von jedem einzelnen Element.
val zahlen = List(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val quadratZahlen = zahlen.map(x => x * x)
// List(1, 4, 9, 16, 25, 36, 49, 64, 81, 100)
Weitere Links: