Ausgabeanweisungen in Java
Syntax von Ausgabeanweisungen
Das folgende Syntaxdiagramm zeigt den Aufbau einer Ausgabeanweisung.
- Ausgabeanweisung
Ausgabeanweisung
.----. .-. .----. .-. .------. .-.
---->( java )--->( . )--->( lang )--->( . )--->( System )--->( . )---.
'----' '-' '----' '-' '------' '-' |
.--------------------------------------------------------------------'
| .---. .-. .-------.
'--->( out )--->( . )--->( println )---.
'---' '-' '-------' |
.--------------------------------------'
| .-. .----------. .-. .-.
'--->( ( )--->| Ausdruck |--->( ) )--->( ; )--->
'-' '----------' '-' '-'
Wir nennen den Ausdruck in einer Ausgabeanweisung auch das Argument jener Ausgabeanweisung.
Typanforderungen von Ausgabeanweisungen
Der Ausdruck einer Ausgabeanweisung darf jeden der bisher behandelten Typen haben.
Formatierung von Ausgabeanweisungen
Wir haben bisher hinter dem Worte »println« immer eine neue Zeile begonnen
- »println« und »(« auf zwei verschiedenen Zeilen
java.lang.System.out.println
( 7 );
»println« und die folgende runde Klammer auf »(« sind jeweils eine lexikalische Einheit. Aufeinanderfolgende lexikalische Einheiten dürfen in Java aber im allgemeinen direkt hintereinander geschrieben werden (falls die erste lexikalische Einheit dadurch nicht verlängert wird). Daher ist es auch erlaubt, die ganze Ausgabeanweisung auf einer einzigen Zeile zu schreiben.
- »println« und »(« direkt hintereinander
java.lang.System.out.println( 7 );
Trennung von zwei Ausgabeanweisungen
Beim Hintereinanderschreiben zweier Ausgabeanweisungen trifft die lexikalische Einheit »;« auf die lexikalische Einheit »java«. Zwischen diese beiden lexikalischen Einheiten kann (nach Regeln, die schon behandelt wurden) Leerraum eingefügt werden, dies ist aber nicht nötig. Beispielsweise sind alle der folgenden drei Kombinationen zulässig.
- Hintereinanderschreibung zweier Ausgabeanweisungen
java.lang.System.out.println( 7 );
java.lang.System.out.println( 8 );
- Hintereinanderschreibung zweier Ausgabeanweisungen
java.lang.System.out.println( 7 ); java.lang.System.out.println( 8 );
- Hintereinanderschreibung zweier Ausgabeanweisungen
java.lang.System.out.println( 7 );java.lang.System.out.println( 8 );
Diese Änderungen sind also auch jeweils Refaktoren.
Einfügen von Leerraum vor oder hinter eine Ausgabeanweisung
Die Regeln zur Trennung lexikalischer Einheiten gelten nicht nur für Ausdrücke, sondern für das gesamte Programm.
Entsprechend kann Leerraum vor oder hinter Ausgabeanweisungen eingefügt werden.
Main.java
public final class Main
{ public static void main( final java.lang.String[] args )
{ java.lang.System.out.println
( 2 );
java.lang.System.out.println
( 3 ); }}Main.java
public final class Main
{ public static void main( final java.lang.String[] args )
{java.lang.System.out.println
( 2 );
java.lang.System.out.println
( 3 );}}
In vielen Fällen kann Leerraum vor oder hinter einer Ausgabeanweisung aber auch entfernt werden.
Main.java
public final class Main
{ public static void main( final java.lang.String[] args )
{java.lang.System.out.println
( 2 );
java.lang.System.out.println
( 3 );}}
Auch zwischen zwei Ausgabeanweisungen kann Leerraum eingefügt werden.
Main.java
public final class Main
{ public static void main( final java.lang.String[] args )
{java.lang.System.out.println
( 2 );java.lang.System.out.println
( 3 );}}