If, IfNot
Bei "If" bzw. "IfNot" wird ein nachfolgender Block nur ausgeführt, wenn die übergebene Bedingung zutrifft.
If
a = 5
If( a > 3 )
Print "yes"
If( a <= 3 )
Print "no"
In diesem einfachen Beispiel wird der Variablen "a" der Wert 5 zugewiesen. Die erste Bedingung trifft zu, denn "a" ist größer als 3, somit wird "yes" ausgegeben. Die zweite Bedingung trifft nicht zu, weshalb keine Ausgabe erfolgt.
IfNot
Die Bedingung "IfNot" funktioniert entgegengesetzt zu "If". Trifft die Bedingung NICHT zu, wird der Block ausgeführt.
a = 5
IfNot( a > 3 )
Print "yes"
IfNot( a <= 3 )
Print "no"
Hier trifft die erste Bedingung nicht zu, da "a" ja größer als 3 ist. Die zweite Bedingung ist hingegen gültig, da der Wert von "a" NICHT kleiner oder gleich 3 ist. Somit wird hier "no" ausgegeben.
Else
Trifft eine Bedingung nicht zu, so lässt sich ein alternativer Block ausführen:
a = 2
If( a > 3 )
Print "yes"
.else
Print "no"
Mit der Funktion ".else" wird in diesem Beispiel der zweite Block ausgeführt und "no" ausgegeben.
Wichtig ist hierbei der Punkt vor dem "else". Dies signalisiert dass es sich um eine Funktion handelt, welche mit dem "If"-Objekt in Verbindung steht.
Else If
Manchmal wird eine Kaskade von Abfragen benötigt. Hierzu kann der ".else"-Funktion eine weitere Bedingung übergeben werden:
a = 2
If( a > 9 )
Print "Very high!"
.else( a > 5 )
Print "High"
.else( a >= 3 )
Print "Medium"
.else
Print "Low"
Hier wird der Reihe nach abgefragt ob "a" größer als 9, größer als 5 oder größer gleich 3 ist. Jedoch erst das letzte ".else" trifft in diesem Fall zu, weshalb hier "Low" ausgegeben wird.
Hinweis
Das vorherige Beispiel lässt sich auch so schreiben:
a = 2
list = ["Very high!", "High", "Medium", "Low"]
Which( a > 9, a > 5, a >= 3, true )
Print list[it]