„Ausdruck wird erwartet“ Fehlermeldung bei Swift Playgrounds?
Hallo.
Ich versuche mir gerade Swift beizubringen und bei meinem Code habe ich alles wie immer gemacht. Als ich zu meiner while-Schleife „else if“ hinzufügen wollte, zeigt er mir die ganze Zeit „Ausdruck wird erwartet" an.
Ich bitte um Hilfe.
2 Antworten
Auf ein while kann kein else folgen. Entweder wird die Bedingung im Schleifenkopf erfüllt und der Schleifenkörper daraufhin so lange ausgeführt, bis die Bedingung nicht mehr wahr ist oder es kommt von Anfang an zu keiner Iteration. Ein else muss allerdings einem if folgen.
if someCondition {
// ...
}
else if someOtherCondition {
// ...
}
Eine Lösung für dein Problem wäre die Änderung der Reihenfolge. Prüfe erst, ob die Bedingung deines else if zutrifft, entferne aber das Schlüsselwort else. Wenn sich durch den darauffolgenden Code-Block der Wert der im Kopf geprüften Variablen ändern könnte, solltest du das Prüfungsergebnis stattdessen erst speichern.
var resultOfYourCondition = // ...
if resultOfYourCondition {
// ...
}
while !resultOfYourCondition {
// ...
}
Entferne mal das ";", ich bin mir nicht sicher ob das da hingehört.
In dem Kontext, ja. Nach Fehlerbeseitigung kann das Semikolon ruhig weg. Es stellt eine leere Anweisung dar (sie tut also nichts), ist also redundant.
Das will swift von sich aus. Wenn ich es wegmache schreibt des mir das als weiterenfehler hin