Java eine Zeile, wenn nicht funktioniert für Drucke [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Java Ternary ohne Zuordnung 4 Antworten

Wenn du etwas schreibst wie:

    boolean condition;
    (...)
    String out = condition ? "true" : "false";
    System.out.println(out);

Es klappt. Aber wenn Sie @ schreib

    condition ? System.out.println("true") : System.out.println("false");

Sie erhalten eine Fehlermeldung "keine Aussage". Die "richtige" Art zu schreiben (die Verwendung von Klammern oder "in einer Zeile sein oder nicht sein" ist ausgeschlossen):

    if (condition)
        System.out.println("true");
    else
        System.out.println("false");

Warum? Die eine Zeileifs muss immer einen Wert zurückgeben?

BEARBEITEN An alle, die darauf hinweisen, dass

    condition ? System.out.println("true") : System.out.println("false");

ist keine korrekte Syntax, ja, ich habe diesen Teil. Ich frage nicht nach Lösungen (obwohl das

    System.out.println(condition ? "true" : "false");

ist nett

@ Andrew Tobilko wo steht das?DA interessiert mich.

EDIT2: Die akzeptierte Antwort liefert genau das, was ich wollte. Vielen Dan

Antworten auf die Frage(8)

Ihre Antwort auf die Frage