Frage von Liptonix47, 29

Java Syntax error on token "else" - Wie kann ich diese Fehlermeldung beheben?

Hallo Leute,

bin ziemlich neu beim Programmieren in Java, jedoch stolpere ich öfter einer Fehlermeldung über den Weg. Bei den If-Anweisungen habe ich scheinbar einen Syntaxfehler und das else wird mir immer rot unterlegt. Jetzt möchte ich gern wissen, warum mein Quelltext einen Syntaxfehler hat, denn ich finde nichts, was genau falsch sein könnte.

Der Quelltext:

{
  for(int i = 0; i <= 10; i++) {
    if (i == 6) {
      break;
    }
    if else (i % 3 == 0) {
      continue;
    }
    if else(i < 8) Math.pow(i, 2); {
    }
  }
Antwort
von regex9, 11

Zuerst einmal gehe ich davon aus, dass die oberste geöffnete Klammer ein Kopierfehler deinerseits ist.

Du hast eindeutige Syntaxfehler in deinem Code. Und da dir diese im Editor sogar direkt markiert wurden, hättest du schon einmal nachschlagen sollen. Z.B. in der Dokumentation von Java-Entwickler Oracle: https://docs.oracle.com/javase/tutorial/java/nutsandbolts/if.html

Es gibt kein if else (....), stattdessen werden nach beiden Schlüsselwörtern jeweils ein Ausführungskörper / eine Anweisung, sowie nach dem if eine Kopfbedingung erwartet.

Den leeren Block am Ende der Schleife kannst du dir übrigens sparen. So bleibt letzten Endes folgender Code:

for(int i = 0; i <= 10; i++) { 
  if (i == 6) { 
    break;
  }
  else if(i % 3 == 0) { 
    continue;
  }
  else if(i < 8) {
    Math.pow(i, 2);
  }
}
Antwort
von AnonYmus19941, 11

Richtiger Code:

{
for(int i = 0; i <= 10; i++) {
if (i == 6) {
break;
} else {
if (i% 3 == 0) {
continue;
} else {
if (i < 8) {
Math.pow(i, 2);
}
}
}
}
}
Antwort
von triopasi, 4

Was bitte soll dieser Code machen? Der ist so ein Schwachsinn... Warum sind die ganzen IF/ELSE ineinander geschachtelt? Warum das break? Wofür ist das continue?

Kommentar von AnonYmus19941 ,

Ist doch egal. Die Frage war, warum es nicht funktioniert, und nicht, ob es etwas bringt.

Kommentar von triopasi ,

Wäre der Code ordentlich geschrieben könnte man sich viele Fehler sparen...

Antwort
von Liptonix47, 10

sorry sehe erst jetzt das die absätze nicht drinne sind, und dementsrechend der quelltext schwer zu lesen ist 

Kommentar von AnonYmus19941 ,

Geht schon, ist ja nicht sehr viel.

Allerdings wäre es gut, wenn du beim nächsten Mal aufpasst oder, wenn du es vermeiden willst, dich mit dem sche*ß-Editor von GF rumzuärgern, den Code auf http://pastebin.com oder einer ähnlichen Plattform postest (bitte mit Syntax-Highlighting).

Keine passende Antwort gefunden?

Fragen Sie die Community