Hi, jetzt also zu Video 3. In dem Video
möchte ich euch was zu listen in Racket erzählen.
Listen können direkt durch die Angabe der Elemente definiert werden.
Wenn ich jetzt also hier vorne dieses Apostroph sorgt dafür,
dass es kein Ausdruck, sondern eine Liste ist.
Wenn ich hier jetzt eins, zwei, drei reinschreibe,
kriege ich auch genau das Gleiche wieder.
1, 2, 3 und hier auch wieder mit
dem Apostroph
Ich kann das Ganze aber auch definieren, indem ich
einfach sage, list und dann 1, 2, 3.
Und wenn ich jetzt Enter drücke, kriege ich genau das Gleiche wieder.
Listen können auch Rechnungen enthalten, wenn ich jetzt hier,
ihr seht ja, hier musste ich das Oposcroft machen,
weil ich die Liste direkt definiert habe.
Hier nehme ich einen Ausdruck mit dem Schlüsselwort List
und habe so eine Liste rausgekriegt
Zu den Rechnungen, Listen können auch Rechnungen enthalten.
Wenn ich jetzt hier schreibe, List, 1, 2,
3 und mach dann hier einen Ausdruck rein und sag mal 2,
21, kriege ich dann eine Liste raus aus 1,
2, 3 und 2 mal 21.
Also 42. Eine Liste kann auch Unterlisten enthalten. Das wäre jetzt zum Beispiel,
ich fange jetzt hier wieder mit dem Schlüsselwort List an,
habe eine 1, 2, 3 da drin.
Mach jetzt hier wieder eine Liste rein mit den Elementen 8 und 9.
Dann kommt hier eine Liste raus. Die besteht aus den
Elementen 1, 2, 3 und der Liste 8 und 9.
Hier habe ich das, Papostroph, angeben müssen,
damit Racket weiß, hier soll nicht irgendein Ausdruck,
irgendeine Rechnung kommen.
Hier lässt Racket
das weg
Vorne brauche ich es, um es zu unterscheiden von einem Ausdruck.
Hier drin ist es dann einfach,
ist die Liste dann einfach dadurch angegeben,
dass Hundeklamotten sind und zwei Zahlen da drin.
Ich kann von der Liste mir die Länge geben lassen,
zum Beispiel mit Lenks.
Das mache ich mit Lenks. Jetzt definiere ich mich
hier wieder
eine Liste
Zwei, offensichtlich müssen in einer Liste nicht nur gleichartige Elemente drin sein,
so wie das in Java der Fall ist,
sondern es können halt unterschiedliche Elemente drin sein, Buchstaben und eine Zahl.
Und wir haben drei Elemente in der Liste. Es gibt auch Lehrelisten,
das hier ist eine leere Liste und Racket
gibt mir dann die leere Liste zurück und folglich ist,
wenn ich längs darauf aufrufe, Das Ergebnis null.
Apropos null, ich kann auch prüfen, ob eine Liste leer ist.
Und das mache ich, indem ich hier tatsächlich null Fragezeichen sage.
Das ist nicht unser Nall, wie wir es bei Referenzvariablen,
die ins Nabana zeigen, in Java haben,
sondern es ist hier tatsächlich die Frage, hat eine Liste
Die Länge null. Mich hier 1, 2 reinmache,
dann kriege ich Falls raus, das hier ist der Bullshow-Ausdruck für Falls,
wenn ich das Ganze jetzt aber mal aufrufe.
Auf eine Leerenliste. Das Runde, dann gibt die Prüfung,
ob die Leereliste leer ist. True. Man muss ein bisschen aufpassen,
das hatte ich ja auch schon bei der Annotation mit dem
Apostroph gesagt, dass man Ausdrücke und Listen unterscheidet.
Wenn ich hier jetzt den Ausdruck habe, sind 3,
also Sinus von 3, dann kriege ich den Sinus von 3.
Wenn ich jetzt aber einen Apostroph nach vorne mache und schreibe dann wieder,
sind 3, dann kriege ich eine Liste,
die aus Sinus und 3 besteht
Ja, das kann man auch nochmal,
kann man sich auch nochmal die Länge dieser Liste angucken.
Und du längerst hoffentlich zwei, da sind wir.
Ja, das war schon das dritte Video,
das ist diesmal ganz fürchterlich kurz ausgefallen.
Aber wir sehen uns ja noch einmal wieder zu Video 4
und da werde ich euch noch ein bisschen mehr
zu Listen erzählen.
Bis dann