Die folgende Methode wandelt eine Zeichenkette in eine Zahl um. Da es möglich ist, dass die
übergebene Zeichenkette keiner Zahl entspricht, wirft diese Methode im Falle eines fehlerhaften Inputs eine NumberFormatException. Vervollständigen Sie folgenden Code
indem Sie
1. Die Exception abfangen und die Ausgabe „Das war keine Zahl“ auf die Konsole ausgeben.
2. Die Exception abfangen, die Ausgabe „Das war keine Zahl“ auf die Konsole ausgeben und die gefangene Exception abermals werfen.
3. Die Methode derart deklarieren, dass diese Exception automatisch an die nächste aufrufende
Funktion weitergeworfen wird.
Meine Idee:
1.)
2.) Leider versteh ich Throw nich so ganz und wozu ich das brauche.
Ich denke ich solls so machen, nur sehe ich den Sinn nicht, das zu tun.
3.) Versteh ich nur Bahnhof, ich soll eine Exception in eine andere Methode werfen ?
übergebene Zeichenkette keiner Zahl entspricht, wirft diese Methode im Falle eines fehlerhaften Inputs eine NumberFormatException. Vervollständigen Sie folgenden Code
Code:
public static int stringToInt(String txt){
return Integer.parseInt(txt);
}
indem Sie
1. Die Exception abfangen und die Ausgabe „Das war keine Zahl“ auf die Konsole ausgeben.
2. Die Exception abfangen, die Ausgabe „Das war keine Zahl“ auf die Konsole ausgeben und die gefangene Exception abermals werfen.
3. Die Methode derart deklarieren, dass diese Exception automatisch an die nächste aufrufende
Funktion weitergeworfen wird.
Meine Idee:
1.)
Code:
public class Ubung_1 {
public static void main(String[] args) {
int zahl;
try {
zahl = stringToInt("text");
}catch (NumberFormatException e){
System.out.println("Es wurde keine Zahl eingegeben" + e.toString());
}
}
public static int stringToInt(String txt){
return Integer.parseInt(txt);
}
}
2.) Leider versteh ich Throw nich so ganz und wozu ich das brauche.
Ich denke ich solls so machen, nur sehe ich den Sinn nicht, das zu tun.
Code:
public class Ubung_1 {
public static void main(String[] args) {
int zahl;
try {
zahl = stringToInt("text");
}catch (NumberFormatException e){
System.out.println("Es wurde keine Zahl eingegeben" + e.toString());
}throw new NumberFormatException("Es wurde keine Zahl eingegeben");
}
public static int stringToInt(String txt){
return Integer.parseInt(txt);
}
}
3.) Versteh ich nur Bahnhof, ich soll eine Exception in eine andere Methode werfen ?