# try-catch



## willi3 (3. Jan 2012)

Hallo!
Ich hab Probleme bei Try-Catch.
Wie funktioniert das?

Danke und LG



```
public static void main(String[] args){		
		
			//read first number
			System.out.print("Geben Sie die erste Zahl ein (q-quit): ");
			boolean ungültig=true;
			while (ungültig) {
			String sx = in.next();

			if(sx.equals("q")){
				printCiao();
				return;
			}
			ungültig=false;

			double x = readNumber(sx);		
			catch(java.lang.NumberFormatException ){
				System.out.print("Die Eingabe ist keine Zahl! Geben Sie eine Zahl ein (q-quit): ");
				ungültig=true;
			}}
			
	

	private static double readNumber(String s) {
		double d = 1d;
		
		//Wenn der Parameter s nicht zu einem double-Wert geparst werden
		//kann, wirft die Methode Double.parseDouble eine NumberFormatException.
		try{
		

		d = Double.parseDouble(s);
		}
		
		

		
		//Verwenden Sie einen try-catch Block um diese Situation angemessen reagieren zu //kšnnen.
		//Falls das Parsen nicht erfolgreich war, soll erneut 
		//mit folgender Nachricht 
		//System.out.print("Die Eingabe ist keine Zahl! Geben Sie eine Zahl ein (q-quit): ");
		//zur Eingabe aufgefordert werden.
		
		//Platzieren Sie Ihren try-catch Block innerhalb einer while-Schleife welche erst verlassen
		//werden soll, sobald eine gŸltige Eingabe erfolgt ist.
		// java.lang.NumberFormatException
		
		return d;
	}

	
}
```


----------



## ARadauer (3. Jan 2012)

Galileo Computing :: Java ist auch eine Insel – 8 Exceptions


```
}}
```
ich würd mal den code sauber formatieren...


----------



## CortPoker (3. Jan 2012)

```
try {
	d = Double.parseDouble(s);
	System.out.println(d);
	} catch (NumberFormatException e) {
		System.out.println("Die Eingabe ist keine Zahl!");
	}
```


----------

