8.581
Bearbeitungen
Jneug (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „{{Navigation/{{ROOTPAGENAME}}}} == Ein- und Ausgabe auf der Kommanozeile == == Verwendung der Scanner-Klasse == <syntaxhighlight lang="java" line="1"> publi…“) |
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 2: | Zeile 2: | ||
== Ein- und Ausgabe auf der Kommanozeile == | == Ein- und Ausgabe auf der Kommanozeile == | ||
Die Kommandozeile wird in Java über zwei Datenströme angesprochen. Diese können über die immer verfügbare <code>System</code> Klasse angesprochen werden. | |||
; <code>System.out</code> | |||
: Die Ausgabe erfolgt über den <code>System.out</code> Datenstrom. Er bietet dieser ist ein Objekt der Klasse [https://docs.oracle.com/javase/8/docs/api/java/io/PrintStream.html PrintStream] und beherrscht dessen Methoden zur Ausgabe, wie <code>print(String)</code> und <code>println(String)</code>. | |||
; <code>System.in</code> | |||
: Um Date von der Kommandozeile einzulesen steht unter <code>System.in</code> ein Objekt der Klasse [https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html InputStream] zur Verfügung. Dieser kann Daten in Form von ''Bytes'' einlesen. Zur einfacheren Handhabung stellt Java die Hilfsklasse <code>java.util.Scanner</code> zur verfügung, mit der statt Bytes auch direkt ''Integer'' oder ''Strings'' eingelesen werden können. | |||
== Ausgaben auf der Kommandozeile == | |||
Ausgaben über den Ausgabestrom <code>System.out</code> können jederzeit in einem Javaprogramm gemacht werden. | |||
<syntaxhighlight lang="java" line="1"> | |||
// Ausgabe mit automatischem Zeilenumbruch am Ende | |||
System.out.println("Hello, World!"); | |||
// Ausgabe ohne Zeilenumbruch am Ende | |||
System.out.print("Hello, "); | |||
System.out.print("World!"); | |||
System.out.print("\n"); // Manueller Zeilenumbruch. Das Selbe wie System.out.println(); | |||
</syntaxhighlight> | |||
Für komplexere Ausgaben gibt es noch die Methode <code>printf(String, Object..)</code>, der man neben einem Text-Objekt | |||
auch noch eine Reihe an weiteren Parametern übergibt, die dann im Text für vorgegebene Platzhalter eingesetzt werden. Dies | |||
erlaubt wesentlich genauere Textformatierungen für Teste mit variablen Inhalten, als mit einfacher String-Verknüpfung durch | |||
<code>+</code>. | |||
<syntaxhighlight lang="java" line="1"> | |||
// String mit Platzhaltern für Daten: | |||
// %s - Platzhalter für einen String | |||
// %d - Platzhalter für eine Zahl | |||
// %05d bedeutet, dass die Zahl so viele Nullen vorangestellt werden, dass sie insg. 5 Zeichen hat | |||
System.out.printf("Hallo, %s! Hier ist eine Zahl: %05d", "Welt", 5); // Hallo, Welt! Hier ist eine Zahl: 00005 | |||
</syntaxhighlight> | |||
Eine gute [http://www.hpg-speyer.de/pdf/unterrichtsfaecher/informatik/printf.pdf Übersicht der Ausgabemethoden und Platzhalter-Befehle gibt es in diesem PDF]. | |||
== Verwendung der Scanner-Klasse == | == Verwendung der Scanner-Klasse == |
Bearbeitungen