mein Code:
import java.io.*;
class InstanceCount{
//Klassenvariablen
static int anzahlInstanzen=0;
static int eingabe;
//Konstruktor
public InstanceCount(){
InstanceCount.anzahlInstanzen++;
System.out.println(anzahlInstanzen+". Instanz erzeugt.");
}
public static void main(String args[]){
System.out.println("Zum Erzeugen einer neuen Instanz bitte"+
"\"+\" druecken (Ende: e)");
do {
System.out.print("Eingabe >>");
try{
eingabe=System.in.read();
} catch(IOException ioe) {System.err.println("IOException!");}
if (eingabe=='+') {
InstanceCount instanz = new InstanceCount();
}
} while (eingabe!='e');
}
}
meine Frage:
1) wie fange ich die Benutzereingabe direkt zeichenweise ab? Im Moment muß man return drücken.
2) Beim Ausführen zeigt das Programm ein etwas merkwürdiges verhalten:
Wieso kommt die Eingabeaufforderung mehrmals? Liegt das daran, dass man seine Eingabe mit return bestätigt?
vorgestellt hatte ich mir das ganze so, ...
Eingabe >> +
1. Instanz erzeugt //korrekt
Eingabe>> d //falsche eingabe
Eingabe>>+
2. Instanz erzeugt
[...]
Eingabe>> e //Programmende
Danke für eure Hilfe,
PETER
import java.io.*;
class InstanceCount{
//Klassenvariablen
static int anzahlInstanzen=0;
static int eingabe;
//Konstruktor
public InstanceCount(){
InstanceCount.anzahlInstanzen++;
System.out.println(anzahlInstanzen+". Instanz erzeugt.");
}
public static void main(String args[]){
System.out.println("Zum Erzeugen einer neuen Instanz bitte"+
"\"+\" druecken (Ende: e)");
do {
System.out.print("Eingabe >>");
try{
eingabe=System.in.read();
} catch(IOException ioe) {System.err.println("IOException!");}
if (eingabe=='+') {
InstanceCount instanz = new InstanceCount();
}
} while (eingabe!='e');
}
}
meine Frage:
1) wie fange ich die Benutzereingabe direkt zeichenweise ab? Im Moment muß man return drücken.
2) Beim Ausführen zeigt das Programm ein etwas merkwürdiges verhalten:

Wieso kommt die Eingabeaufforderung mehrmals? Liegt das daran, dass man seine Eingabe mit return bestätigt?
vorgestellt hatte ich mir das ganze so, ...
Eingabe >> +
1. Instanz erzeugt //korrekt
Eingabe>> d //falsche eingabe
Eingabe>>+
2. Instanz erzeugt
[...]
Eingabe>> e //Programmende
Danke für eure Hilfe,
PETER