Eingabe überprüfen .. newbee braucht hilfe ..

Status
Nicht offen für weitere Antworten.

substyle

Mitglied
Hallo Leute,

ich versuche mich gerade in Java.
Nun möchte ich in eine var einen wert speichern,
der ein double sein soll.

Klappt soweit auch ganz gut.
Hier mal ein ausschnitt des Codes ..

import java.io.*;

public class qmk {

public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

double qgroesse;
double qfgroesse;

// Den User nach Input fragen:

System.out.print("Quadratgroesse : ");
qgroesse = Double.parseDouble(in.readLine());

Wie aber fange ich die Exeptions ab ? Wenn der
User z.B. statt 5 vielleicht "aaa" eingibt ?
Und es wäre gut wenn dann die Abfrage nochmal
durchlaufen würde.

Über jeden guten Hinweis wäre ich sehr dankbar.

Lars
 

substyle

Mitglied
Ok, wer suchet der findet:

Bisher bin ich jetz so weit:

Code:
import java.io.*;

public class qmk {

  public static void main(String[] args) throws IOException {

  	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  	
  	// Variablen initialisieren
  	
	double qgroesse;
	double qfgroesse;

	//Input ueberprüfen
  	while (true)
	{
	
	//Input ueberprüfen
  	try
		{
			// Den User nach Input fragen:
			System.out.print("Quadratgroesse : ");
			qgroesse = Double.parseDouble(br.readLine());
		}

	catch (NumberFormatException e)
		{	// Exeption auffangen
			System.out.println("Nur Zahlen eingeben!");
			continue;
		}	
	}
  	// Quadratflächengroesse
  	qfgroesse = qgroesse*qgroesse;


	// Quadratfläche ausgeben
	System.out.print("Quadratflaeche : ");
	System.out.println(qfgroesse);                                                                                                                                                                
	
  }
}

Jetzt gibt mir der Compiler: "unreachable statement" ???
Sorry da komm ich nicht ganz mit, hat wer nen Tipp ?

Lars
 

Ebenius

Top Contributor
Hab nur kurz geschaut, aber ich glaube, dass Deine while-Schleife eine Endlosschleife ist (also eine, die nie beendet wird). Der Code nach der Schleife kann damit nicht erreicht werden.

Anbei: Es hilft sehr zu wissen, in welcher Zeile ein Kompilierproblem auftritt...

Es grüßt Ebenius
 
G

Guest

Gast
fast korrekt:
probiers mal noch hiermit:
qgroesse = Double.parseDouble(br.readLine());
if(qgroesse!=null)
break;
 

substyle

Mitglied
Danke für die Hilfe !

Habe mir inzwischen eine IO.class geschrieben um den Code "sauberer" zu halten
Meine Lösung ist jetzt auch ganz einfach :))

Code:
public class qmk {

  public static void main(String[] args) {
	double gr = IO.readDouble("Quadratgroesse (>0): ");
  	while (gr <=0) {
  		IO.println ("Eingabefehler! Nur positive Zahlen sind zugelassen");
  		gr = IO.readDouble("Quadratgroesse (>0): ");
	}

Der IO.class Abschnitt lautet dann

Code:
  // Einlesen eines double
  public static double readDouble() {
    try {
      BufferedReader input = 
        new BufferedReader(new InputStreamReader(System.in));
      String eingabe = input.readLine();
      Double String_to_double = new Double(eingabe);
      return String_to_double.doubleValue();
    }
    catch (Exception e) {
      return 0.0;
    }
  }

subby
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Scanner-Eingabe nach gewissem Zeitraum überprüfen Java Basics - Anfänger-Themen 2
S Eingabe auf Richtigkeit und Reihenfolg überprüfen Java Basics - Anfänger-Themen 3
L Eingabe überprüfen Java Basics - Anfänger-Themen 7
T Input/Output Int Eingabe auf Zahl überprüfen Java Basics - Anfänger-Themen 30
K Eingabe überprüfen Java Basics - Anfänger-Themen 4
S Eingabe auf int bzw. String überprüfen Java Basics - Anfänger-Themen 6
A Integer Eingabe überprüfen Java Basics - Anfänger-Themen 7
W Hilfe: Eingabe überprüfen Java Basics - Anfänger-Themen 8
C String überprüfen, ob gültig, sonst wiederholung der eingabe Java Basics - Anfänger-Themen 9
D Eingabe überprüfen mit in.done() Java Basics - Anfänger-Themen 6
K Eingabe für exec überprüfen Java Basics - Anfänger-Themen 2
D Eingabe bei einem Klassen-Attribu auf Richtigkeit überprüfen Java Basics - Anfänger-Themen 6
C Textfeld Eingabe überprüfen! Java Basics - Anfänger-Themen 12
G Eingabe überprüfen Java Basics - Anfänger-Themen 3
G String im TextPane während der Eingabe überprüfen? Java Basics - Anfänger-Themen 12
G Eingabe in JTextField überprüfen Java Basics - Anfänger-Themen 5
G überprüfen,ob bei der Eingabe es sich um einer Zahl handelt? Java Basics - Anfänger-Themen 2
G Eingabe überprüfen? Java Basics - Anfänger-Themen 4
F Eingabe überprüfen Java Basics - Anfänger-Themen 3
J Eingabe des Benutzers speichern und überprüfen Java Basics - Anfänger-Themen 9
B Eingabe auf GANZAHL überprüfen ! Java Basics - Anfänger-Themen 2
Torschti Eingabe von Dezimalzahlen (bis zu zwei Kommastellen) Java Basics - Anfänger-Themen 11
T User input in Verbindung mit ChronoUnit anpassen und falls falsche Eingabe getätigtwird Java Basics - Anfänger-Themen 7
T Eingabe durch eine Zahl dividieren nachgucken? Java Basics - Anfänger-Themen 4
T sortierung der eingabe nach größe Java Basics - Anfänger-Themen 5
Ostkreuz Int Scanner auf Enter Eingabe prüfen Java Basics - Anfänger-Themen 4
G Programm läuft durch, ohne Eingabe aus dem Chat abzuwarten Java Basics - Anfänger-Themen 4
Jul1n4tor Scanner error bei Eingabe die kein Integer ist Java Basics - Anfänger-Themen 4
S Größte Zahl nach Eingabe der Zahl 0 ausgeben Java Basics - Anfänger-Themen 6
M Dialogbox sofort neustarten, falls aktuelle Eingabe falsch Java Basics - Anfänger-Themen 11
M Dialogbox solange abfragen, bis gültige Wert-Eingabe Java Basics - Anfänger-Themen 12
S OOP Java Eingabe in verschiedene Datenbank Tabellen eintragen Java Basics - Anfänger-Themen 7
A Bei VierGewinnt Eingabe per Buchstabe (a,b,c...) Java Basics - Anfänger-Themen 2
java-starter Erste Schritte Eingabe in Char wert umwandeln Java Basics - Anfänger-Themen 7
Lion.King Subtraktion nach Eingabe im Terminal Java Basics - Anfänger-Themen 7
X Erste Schritte Scanner eingabe wird übersprungen Java Basics - Anfänger-Themen 4
L Dauerhaftes Speichern einer Eingabe bei einer ArrayList Java Basics - Anfänger-Themen 26
J In der Ausgabe wird ohne Eingabe in den else Block gesprungen. Java Basics - Anfänger-Themen 0
J In der Ausgabe wird ohne Eingabe in den else Block gesprungen. Java Basics - Anfänger-Themen 5
J Mein Programm läuft bei der ersten Eingabe nicht mehr weiter, woran liegt das? Java Basics - Anfänger-Themen 6
M Eingabe limit Java Basics - Anfänger-Themen 8
brypa Programm mit Eingabe Java Basics - Anfänger-Themen 129
C Potenzberechnung über switch case. Taschenrechner mit Eingabe über einen grafischen Dialog Java Basics - Anfänger-Themen 22
D falsche eingabe erkennen Java Basics - Anfänger-Themen 2
H Eingabe tätigen bevor Graphics g Fenster öffnet Java Basics - Anfänger-Themen 5
H For-Schleife bis Index von Eingabe laufen lassen Java Basics - Anfänger-Themen 24
Hamudi Bachir 2D Array eingabe vom Benutzer Java Basics - Anfänger-Themen 31
S Warum erscheint bei mir "Hallo Welt" und nicht die aktuelle Eingabe? Java Basics - Anfänger-Themen 16
J Jtable Eingabe nach Klick ausserhalb der Tabelle übernehmen Java Basics - Anfänger-Themen 6
B Array bei jeder Eingabe um eins erweitern Java Basics - Anfänger-Themen 3
TimoN11 IntelliJ , Ausgabe von einem Quellcode in Eingabe eines Quellcodes Java Basics - Anfänger-Themen 1
M Nach einer erstmaligen Eingabe, eine zweite Eingabe nur noch gegen bestätigung möglich Java Basics - Anfänger-Themen 2
chocobear26 Interface JOptionPane - Dialog_Fenster zeigt immer vorherige Eingabe an. Java Basics - Anfänger-Themen 4
E JavaFX Taschenrechner Eingabe im Textfield beschränken Java Basics - Anfänger-Themen 2
M Regex nur Zahlen und Punkt zulassen, Keine Eingabe(Leeres TextFeld) nicht zulassen Java Basics - Anfänger-Themen 6
M JTextField nur Zahleneingaben zulassen, eingabe sperren Java Basics - Anfänger-Themen 24
E Timer trotz erwartender Eingabe durchlaufen lassen Java Basics - Anfänger-Themen 11
K falsche Eingabe abfangen Java Basics - Anfänger-Themen 8
N Eingabe erkennen, ob groß oder kleingeschrieben worden ist Java Basics - Anfänger-Themen 22
N Fehlerausgabe bei falscher Eingabe der Users Java Basics - Anfänger-Themen 3
N Eingabe des Users direkt hinter die Ausgabe Java Basics - Anfänger-Themen 3
N Eingabe Kommazahlen über Scanner Java Basics - Anfänger-Themen 2
O Mehrfache Scanner-Eingabe durch Komma getrennt Java Basics - Anfänger-Themen 6
M String array durch Eingabe begrenzen Java Basics - Anfänger-Themen 7
iman Eingabe von Benutzer Filter machen. Java Basics - Anfänger-Themen 7
M Input/Output JTextField Eingabe in String Variable speichern Java Basics - Anfänger-Themen 15
D Eingabe einscannen, ohne vorher einen Datentypen anzugeben? Java Basics - Anfänger-Themen 1
M Verschiedene Eingabe = Verschiedene Ausgaben Java Basics - Anfänger-Themen 5
H Eingabe Java Basics - Anfänger-Themen 7
F Bedingung für Eingabe Java Basics - Anfänger-Themen 2
K Durch eine Text eingabe etwas Ausführen Java Basics - Anfänger-Themen 5
Dimax Erste Schritte String Eingabe Prüfen Java Basics - Anfänger-Themen 11
R Eingabe String umwandeln zu Integer Werten Java Basics - Anfänger-Themen 8
B Türme von Hanoi mit einer beliebigen aber gültigen Eingabe lösen Java Basics - Anfänger-Themen 5
D While Schleife bei Bedarf durch Eingabe stoppen Java Basics - Anfänger-Themen 15
J Eingabe Einschränken Java Basics - Anfänger-Themen 1
Zrebna Compiler-Fehler Java-Compiler wird nach 'javac' keyword-Eingabe nicht gestartet (Erste Übung) Java Basics - Anfänger-Themen 18
A Datentypen Unterschiedliche Datentypen in einer Eingabe einlesen Java Basics - Anfänger-Themen 2
D Array via Eingabe befüllen Java Basics - Anfänger-Themen 6
M Wie kann ich eine Eingabe im Java-Swing übergeben? Java Basics - Anfänger-Themen 1
N Abbrechen einer Eingabe endet im Fehler Java Basics - Anfänger-Themen 3
S Konsolen eingabe Java Basics - Anfänger-Themen 17
x-tshainge Bei if (eingabe = = ... ) enter als eingabe nehemen Java Basics - Anfänger-Themen 4
S in ActionListener auf Eingabe aus anderem Frame warten Java Basics - Anfänger-Themen 2
S Eingabe in anderer Klasse verwenden Java Basics - Anfänger-Themen 3
T Input/Output Falsche Eingabe ausgeben Java Basics - Anfänger-Themen 3
R Ratespiel mit Return und einer Eingabe Java Basics - Anfänger-Themen 1
K Eingabe in Array speichern und Ausgeben Java Basics - Anfänger-Themen 9
J Eingabe des Scanners an einer bestimmten Position Java Basics - Anfänger-Themen 6
J Input/Output Den zweiten Output erst nach Eingabe ausgeben Java Basics - Anfänger-Themen 4
R Java CMD Eingabe verbergen Java Basics - Anfänger-Themen 4
M Eingabe des Benutzers Verwenden Java Basics - Anfänger-Themen 9
S Method mit Eingabe abrufen Java Basics - Anfänger-Themen 1
N Operatoren Suchen nach einer bestimmten Eingabe (durch Scanner) Java Basics - Anfänger-Themen 7
M Erste Schritte primzahlen ermitteln, nur zahlen als eingabe erlauben Java Basics - Anfänger-Themen 34
K Überprüfen ob Eingabe ein Float ist Java Basics - Anfänger-Themen 4
G Warum funktioniert das Programm für negative Eingabe nicht? Java Basics - Anfänger-Themen 3
O Erste Schritte Eingabe anweisungen eliminieren Java Basics - Anfänger-Themen 3
G Objekt Instanziierung von Eingabe abhängig machen Java Basics - Anfänger-Themen 5
E Wie Passwort-Eingabe (ohne Echo!) über Konsole ? Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben