Hallo Leute,
ich sitz grad vor folgender Aufgabe:
Kompilieren Sie das Programm und führen Sie es aus. Verwenden Sie als Eingabe die
Werte: {„wort“; -4; 0}, welche jeweils eine Exception werfen. Fange Sie jede der drei
Exceptions einzeln mit try/catch ab. Wenn eine Exception abgefangen wird, soll über
System.out.println() dem Benutzer übermittelt werden, welchen Fehler er gemacht
hat. Danach soll das Programm sofort mit System.exit(1) beendet werden.
Geben Sie in der Main-Methode die Namen der behandelten Exceptions als
Kommentar an.
Bin soweit mit dem Code fertig:
Die dritte Exception funktioniert auch, die beiden davor aber komischerweise nicht. Und ich sehe den Fehler nicht... ???:L
ich sitz grad vor folgender Aufgabe:
Kompilieren Sie das Programm und führen Sie es aus. Verwenden Sie als Eingabe die
Werte: {„wort“; -4; 0}, welche jeweils eine Exception werfen. Fange Sie jede der drei
Exceptions einzeln mit try/catch ab. Wenn eine Exception abgefangen wird, soll über
System.out.println() dem Benutzer übermittelt werden, welchen Fehler er gemacht
hat. Danach soll das Programm sofort mit System.exit(1) beendet werden.
Geben Sie in der Main-Methode die Namen der behandelten Exceptions als
Kommentar an.
Bin soweit mit dem Code fertig:
Java:
import javax.swing.JOptionPane;
/**
* Diese Klasse erzeugt den Mittelwert einer variierenden Menge von Zahlen
*
*/
public class Average {
/**
* Diese Methode erzeugt den Mittelwert einer variierenden Menge von Zahlen
*
*/
public static void main(String[] args) {
/**
* Behandelte Exceptions:
* Exception in thread "main" java.lang.NumberFormatException: For input string: "wort",
* Exception in thread "main" java.lang.NegativeArraySizeException,
* Exception in thread "main" java.lang.ArithmeticException: / by zero
*
*/
int n = Integer.parseInt(JOptionPane
.showInputDialog("Länge des Arrays"));
int[] fArray = new int[n];
try {
for (int i = 0; i < n; i++)
fArray[i] = Integer.parseInt(JOptionPane
.showInputDialog("Eingabe des " + i + ". Wertes"));
int sum = 0;
for (int i = 0; i < n; i++)
sum += fArray[i];
float mittel = sum / n;
System.out.println("Mittelwert: " + mittel);
}
catch (NumberFormatException e1) {
System.out.println("***NumberFormatException: " + e1.toString());
System.exit(1);
}
catch (NegativeArraySizeException e2) {
System.out.println("***NegativeArraySizeException: " + e2.toString());
System.exit(1);
}
catch (ArithmeticException e3) {
System.out.println("***ArithmeticException: " + e3.toString());
System.exit(1);
}
}
}
Die dritte Exception funktioniert auch, die beiden davor aber komischerweise nicht. Und ich sehe den Fehler nicht... ???:L