If else
Inhaltsverzeichnis
Vorwort
Eine if Anweisung hilft uns zu prüfen ob estwas wahr ist, diese benutzen wir immer dann wenn wir sicherstellen wollen das auch nur etwas passiert wenn es soll und auch nur "jetzt" so gebraucht wird.
Wir werden hier nur die if(ausdruck euch näher bringen, da man den Rest meist eher selten brauch. Ihr seht auch ohne Ausdruck ist das Proggen fast unddenkbar.
if (Ausdruck)
Ein einfacher if ausdruck brauch keine klammern, dieses werden wir nun mit einem kleinen Loop mit einem Toggle mal testen
Loop, 4
{
Var := !Var
if(Var == 1)
MsgBox % "Die Var beinhaltet " Var
else
MsgBox % "Die Var hat diesmal " Var
}
Merke: Ein einzeiliger if Ausdruck benötigt keine "{ }"
Wollen wir jetzt jedoch einen Mehrzeiligen if Ausdruck machen, benötigen wir die Klammern.
Loop, 4
{
Var := !Var
if(Var == 1) {
Var2 := Var ? "True" : "false"
MsgBox % "Die Var beinhaltet " . Var . " und ist " . Var2
} else {
Var2 := Var ? "True" : "false"
MSgBox % "Die Var hat diesmal " . Var . " und ist " . Var2
}
}
Merke:
Ein mehrzeiliger if Ausdruck benötigt "{ }"
Sobald mehr als eine Zeile für das if gebraucht werden müssen wir die Klammern setzen
mehrere if Anweisung koppeln
Wir können auch um platz zu sparen verschiedene if Anweisungen mit einander koppeln hierfür bietet AHK "or"(||) und "and"(&&) an. Was uns erlaubt if zu kombinieren
var := "1"
Loop, 4
{
var2 := !Var2
if(Var == 1 && Var2 == 1)
MsgBox % "Var und Var2 enthalten beide " var
else
MsgBox % "Var enthällt " . Var . " und Var2 " . Var2
}
Hier muss nur eine von beiden Vars 1 enthalten da wir hier Or nutzen
var := "1"
Loop, 4
{
Var := !Var
var2 := !Var2
if(Var == 1 || Var2 == 1)
MsgBox % "Var Enthällt " . Var . " und Var2 enthällt " . var2
}
Merke:
or oder and kann man wie folgt nutzen
Als Text (or) (and) oder als Zeichensatz (||) (&&)
Ternärer Operator
Nun fragen sich sicherlich viele "Was ist das?", doch wir haben es hier auf der Seite schon verwendet.
ein "Ternärer Operator" ist nichts anderes wie ine kurzfassung von einer If Else anforderung
Wir können mithilfe einer Variable gleich ein If Else ausruck erzeugen
Loop, 4
{
Var := !Var
Var2:= (Var) ? "Ja" : "Nein"
MsgBox % Var2
}
Zur erklärung, in der Var2 Speichern wir das ergebniss unseren Ternärer Operator, diesen weisen wir mit hilfer der () die Variable zu die er checken soll wobei das ? für If Else steht. Ein Ternärer Operator kann hier jedoch nur War oder falsch sein nicht wahr oder Wahr und Falsch ("if" "else if" "else")
Merke:
Ternärer Operator kann nur zwischen wahr falsch unterscheiden
Zwichen ? wahr : falsch muss immer ein Leerzeichen sein(&&)