![]() |
Lehrer Nussbaumer - JAVA (eine kleine Einführung ;) |
|---|
GrundlagenGUIEingabeAusgabeApplikationenAppletsServletsBeispieleSpieleIDEsSkriptumJAVA-DOCS----------------- letzte Änderung: 09 December 2021 ----------------- Lehrer Nussbaumers Seite ... in Arbeit ... |
Ein- und AusgabeStandard-Ein- und -AusgabeDie Datenein- und -ausgabe beruht auf einer Reihe von Klassen, die in java.io.* zur Verfügung gestellt werden. Das folgende Beispiel zeigt das Zusammenspiel dieser Methoden: import java.io.*;
public class eingabe {
public static void main (String args[]) throws IOException{
InputStreamReader datenstrom = new InputStreamReader(System.in);
BufferedReader dateneingabe = new BufferedReader(datenstrom);
String str = dateneingabe.readLine();
System.out.println(str);
}
}
Die Eingabe beruht auf einem sogenannten "Input-Stream": Die Klasse InputStreamReader wandelt eingegebene Zeichen in Bytes um. Die Klasse BufferedReader speichert den erhaltenen Bytes-Strom und stellt Methoden (readLine()) zur Verfügung, mit denen die Daten aus dem Puffer gelesen werden. Bemerkung: Die Standard-Eingabe wird über den Datenstrom System.in, die Standard-Ausgabe über den Datenstrom System.out geregelt. Zusätzlich steht noch die Standard-Ausgabe für Fehlermeldungen in System.err zur Verfügung (Beachte, dass Methoden mit Ein-/Ausgabeoperationen stets "IOExceptions" werfen dürfen!). Sollen Zahlen eingelesen werden, so muss die Eingabe mit der Methode parseInt der Klasse Integer in eine ganze Zahl umgewandelt werden: import java.io.*;
public class eingabe {
public static void main (String args[]) throws IOException{
InputStreamReader datenstrom = new InputStreamReader(System.in);
BufferedReader dateneingabe = new BufferedReader(datenstrom);
int i = Integer.parseInt(dateneingabe.readLine());
System.out.println("Die Zahl " + i + " wurde eingegeben ;-)");
}
}
Weitere Beispiele:Im folgenden Beispiel wird die Eingabe so lange wiederholt, bis das erste Zeichen des eingegebenen Strings '.' ist: import java.io.*;
public class eingabe3 {
public static void main (String args[]) throws IOException {
InputStreamReader eingabedatenstrom = new InputStreamReader(System.in);
BufferedReader eingabe = new BufferedReader(eingabedatenstrom);
String str="hallo";
while (str.charAt(0) != '.') {
System.out.print (">? ");
str = eingabe.readLine();
System.out.println(str);
}
}
}
Aufgabe: Erstelle ein Programm, das so lange ganze Zahlen von der Standard-Eingabe einliest, bis die Zahl 0 eingegeben wird! |