Wiederholung von try-catch

chillerStudent

Bekanntes Mitglied
Kann jemand mir bitte sagen, wie ich try-catch immer wieder wiederholen kann bis man eine ganze Zahl eingibt?
Java:
static Fraction inputFraction() throws NumberFormatException, IOException{
	  System.out.println("Bitte Zaehler eingeben: ");
	  BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
	  
	  try{
		  int i = Integer.parseInt( in.readLine() );
	  }
	  catch(Exception e){
		  System.out.println("Keine Zahl eingegeben!");
	  }

Habe es mit for-schleife versucht. Da kommt aber schwachsinn raus.
 
zeig doch mal deinen versuch. etwas immer wieder wiederholen, bis irgendwas passiert, hört sich für mich nach.. hmmm.. mal überlegen.. ah ja, schleife an 😉
 
Eine Möglichkeit:

Java:
int i  = 0;
while ( true) {
      try{
          i = Integer.parseInt( in.readLine() );
          break;
      } catch(Exception e){
          System.out.println("Keine Zahl eingegeben!");
      }
}
 
oder vllt so:
Java:
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		Integer i = null;
		
		while (i == null) {
			try {
				System.out.print("Bitte Zaehler eingeben> ");
				i = Integer.parseInt(in.readLine());
			} catch (NumberFormatException e) {
				System.out.println("Keine Zahl eingegeben!");
			}
		}

obwohl ich kein größer fan von break und continue bin, scheint mir das hier wohl noch das schönste zu sein. eine option wäre noch mit einem boolean aber da brauchste 2 Zeilen mehr 😉
 

Neue Themen


Zurück
Oben