Beheben Sie den Fehler: Else Without if in Java

Mehvish Ashiq 15 Februar 2024
  1. der error: 'else' without 'if' in Java
  2. Gründe für error: 'else' without 'if' in Java
  3. Beheben Sie den error: 'else' without 'if' in Java
Beheben Sie den Fehler: Else Without if in Java

Heute werden wir etwas über einen Fehler lernen, der beim Schreiben von Code in Java else ohne if sagt. Wir werden auch die möglichen Gründe für diesen Fehler herausfinden und seine Lösung finden.

der error: 'else' without 'if' in Java

Normalerweise treten diese Art von Fehlern bei Neulingen in der Java-Programmierung auf. Bevor wir uns den Ursachen und Lösungen für diesen Fehler zuwenden, wollen wir ein Programm schreiben, das diesen Fehler erzeugt, und ihn verstehen.

Angenommen, wir sind Python-Experten und Anfänger in Java. Also schreiben wir das Java-Programm, das if-else enthält, wie folgt.

Beispielcode:

// import libraries
import java.util.Scanner;

// decide future activity based on the current temperature
public class Test {
  public static void main(String[] args) {
    int temp;
    Scanner scan = new Scanner(System.in);
    System.out.println("What's the current temperature?");
    temp = scan.nextInt();

    if (temp > 95 || temp < 20)
      ;
    System.out.println("Visit our shops");
    else if (temp <= 95) if (temp >= 80) System.out.println("Swimming");
    else if (temp >= 60) if (temp <= 80) System.out.println("Tennis");
    else if (temp >= 40) if (temp < 60) System.out.println("Golf");
    else if (temp < 40) if (temp >= 20) System.out.println("Sking");
  } // end main()
} // end Test Class

Fehler:

sonst ohne Fehler in Java beheben - Fehler

In diesem Programm erhalten wir die aktuelle Temperatur vom Benutzer und entscheiden unsere zukünftige Aktivität basierend auf der aktuellen Temperatur. Das obige Bild zeigt, dass wir einen logischen Fehler erhalten, über den NetBeans IDE zur Kompilierzeit informiert.

Wir können den Code also nicht einmal ausführen, bis wir den Fehler behoben haben. Dazu müssen wir die möglichen Gründe unten kennen.

Gründe für error: 'else' without 'if' in Java

Der Fehler selbst ist erklärend und besagt, dass ein Java-Compiler keine if-Anweisung finden kann, die mit der else-Anweisung verknüpft ist. Denken Sie daran, dass die else-Anweisung nicht ausgeführt wird, es sei denn, sie ist mit einer if-Anweisung verknüpft.

Also, die möglichen Gründe sind unten aufgeführt.

  1. Der erste Grund ist, dass wir vergessen haben, den if-Block vor den else-Block zu schreiben.
  2. Die schließende Klammer der if-Bedingung fehlt.
  3. Wir beenden die if-Anweisung mit einem Semikolon.

Wie kann dieser Fehler behoben werden? Werfen wir einen Blick auf den folgenden Abschnitt.

Beheben Sie den error: 'else' without 'if' in Java

Beispielcode:

// import libraries
import java.util.Scanner;

public class Test {
  public static void main(String[] args) {
    int temp;
    Scanner scan = new Scanner(System.in);
    System.out.println("What's the current temperature?");
    temp = scan.nextInt();

    if (temp > 95 || temp < 20) {
      System.out.println("Visit our shops");
    } // end if
    else if (temp <= 95) {
      if (temp >= 80) {
        System.out.println("Swimming");
      } // end if
      else if (temp >= 60) {
        if (temp <= 80) {
          System.out.println("Tennis");
        } // end if
        else if (temp >= 40) {
          if (temp < 60) {
            System.out.println("Golf");
          } // end if
          else if (temp < 40) {
            if (temp >= 20) {
              System.out.println("Sking");
            } // end if
          } // end else-if
        } // end else-if
      } // end else-if
    } // end else-if
  } // end main()
} // end Test Class

Ausgang:

What's the current temperature?
96
Visit our shops

Wir haben das Semikolon (;) am Ende der if-Anweisung entfernt und das {} für jeden Block eingefügt, um einen Fehler zu beheben, der besagt: 'else' ohne 'if'.

Es ist besser, geschweifte Klammern {} zu verwenden, bis wir Experten genug sind und wissen, wo wir sie weglassen können (wir können sie weglassen, wenn wir eine einzelne Anweisung im Block haben).

Mehvish Ashiq avatar Mehvish Ashiq avatar

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

LinkedIn GitHub Facebook

Verwandter Artikel - Java Error