Lua-Programmierung: Datentypen
Aus Wikibooks
Inhaltsverzeichnis |
[Bearbeiten] Was sind Datentypen?
Datentypen sind die Dinger die der Computer (bzw. das Betriebssystem) verarbeiten kann. In Lua gibt es Zahlen, Strings, Zustände, nil-Werte, Tables und Funktionen. Hier werden jetzt alle bis auf die zwei letzten besprochen.
[Bearbeiten] Zahlen
Hier ein paar Beispiele:
a = 1 b = -1 pi = 3.1415
Die Zuweisung von a ist bekannt. b wird -1 zugewiesen. Der Operator - bewirkt also eine Negierung des Ausdrucks. Der Variable pi wird eine gebrochene Zahl zugewiesen. Dabei ist zu beachten, dass man im Englischen einen Punkt statt eines Kommas verwendet. Dies ist in Lua auch so.
[Bearbeiten] Zeichen & Strings
Ein Zeichen ist in diesem Fall eines aus dem erweiterten ASCII-Zeichensatz, welcher 256 Zeichen beinhaltet. Ein String ist einfach eine Aneinanderreihung von solchen Zeichen.
Es gibt drei Möglichkeiten, eine Zeichen oder ein String zu umschließen: mit ", mit ' und mit [[]].
Hier ein paar Beispiele:
einString = "Hallo dies ist ein String" nochEinString = 'Dies ist auch ein String' print(einString..nochEinString)
So, jetzt probieren wir mal Folgendes auszuführen:
print ("Dies sind Anführungsstriche:" ")
Dummerweise funktioniert das nicht. Das "-Zeichen wird schon verwendet, um Strings zu beginnen bzw. abzuschließen. Für den Fall, dass wir das Zeichen ausgeben wollen, wurde für dieses (und für andere Zeichen) eine Methode eingeführt, mit der das funktioniert. Die Lösung lautet \". Jetzt können wir das Programm abändern sodass es richtig funktioniert:
print ("Dies sind Anführungsstriche:\" ")
Die folgende Tabelle zeigt die Ausgabe von allen Sonderzeichen an:
| Sonderzeichen | Operator |
|---|---|
| Nächste Zeile | \n |
| Horizontaler Tab | \t |
| \ | \\ |
| " | \" |
| ' | \' |
| [ | \[ |
| ] | \] |
Kommen wir jetzt zu den Unterschieden der drei Versionen zur Abgrenzung eines Strings.
Bei " können ' oder [ oder ]-Zeichen auch ohne \ geschrieben werden. Bei ' können " oder [ oder ]-Zeichen auch ohne \ geschrieben werden. Bei und können ' oder " Zeichen auch ohne \ geschrieben werden.
[Bearbeiten] Löschung
nil ist ein absoluter null Wert. Eine Variable (Erläuterung kommt noch), der nil zugewiesen wird, wird gelöscht:
Blabla = 'Du!' MehrBlabla = 'Hallo' print (MehrBlabla..Blabla) Blabla = nil MehrBlabla = nil