Hallo zusammen,
ich befasse mich seit kurzer Zeit erst mit Java und habe nun ein kleineres Problem mit meinem ersten eigenen Programm bei dem ich im Moment nicht weiter weiß.
Kurz zur Erklärung, ich bastel mir im Moment einen eigenen kleinen Rechner der momentan nur die vier Grundrechenarten abdecken soll ,also Plus, Minus, Geteilt und Mal. Ein paar naja Fehler hab ich schon aus dem Weg geschafft, z.B. das nur + , - , / und * als Rechenzeichen benutzt werden dürfen, oder das man keine Division durch 0 machen darf. Nun wollte ich noch ausschliessen, das der Benutzer einen Buchstaben als Zahl eingibt. Da ich Knöpfe per javax.swing.JOptionPane.showInputDialog erstellt habe, schaff ich es nicht diese mit einem if zu entfernen, bzw. ich schaffe es nicht mal einen Try/Catch Block zu erstellen. Falls mir jemand Tipps und bitte nur Tipps, keinen kompletten Code, für mein Problem geben kann, wäre ich sehr froh.
TLDR:
Wie verhindere ich eine Exception durch Eingabe eines Buchstaben für x oder y? Und wie kann ich einen Try/Catch Block erstellen der diese abfängt.
Mit freundlichen Grüßen
Sturmi
Hier noch kurz der Code
ich befasse mich seit kurzer Zeit erst mit Java und habe nun ein kleineres Problem mit meinem ersten eigenen Programm bei dem ich im Moment nicht weiter weiß.
Kurz zur Erklärung, ich bastel mir im Moment einen eigenen kleinen Rechner der momentan nur die vier Grundrechenarten abdecken soll ,also Plus, Minus, Geteilt und Mal. Ein paar naja Fehler hab ich schon aus dem Weg geschafft, z.B. das nur + , - , / und * als Rechenzeichen benutzt werden dürfen, oder das man keine Division durch 0 machen darf. Nun wollte ich noch ausschliessen, das der Benutzer einen Buchstaben als Zahl eingibt. Da ich Knöpfe per javax.swing.JOptionPane.showInputDialog erstellt habe, schaff ich es nicht diese mit einem if zu entfernen, bzw. ich schaffe es nicht mal einen Try/Catch Block zu erstellen. Falls mir jemand Tipps und bitte nur Tipps, keinen kompletten Code, für mein Problem geben kann, wäre ich sehr froh.
TLDR:
Wie verhindere ich eine Exception durch Eingabe eines Buchstaben für x oder y? Und wie kann ich einen Try/Catch Block erstellen der diese abfängt.
Mit freundlichen Grüßen
Sturmi
Hier noch kurz der Code
Java:
public class Main {
static double x = Double.parseDouble(javax.swing.JOptionPane.showInputDialog("Zahl 1"));
static char operator = javax.swing.JOptionPane.showInputDialog("Rechenzeichen").charAt(0);
static double y = Double.parseDouble(javax.swing.JOptionPane.showInputDialog("Zahl 2"));
public static void main(String[] args) {
if(Double.isNaN(x) || Double.isNaN(y))
{System.err.println("Bitte nur Zahlen eingeben");
return;
}
switch (operator)
{
case '+':
System.out.println("Ergebnis:" + " " + (x + y) );
break;
case '-':
System.out.println("Ergebnis:" + " " + (x - y));
break;
case '*':
System.out.println("Ergebnis:" + " " + (x * y));
break;
case '/':
if(y==0)
{System.err.println("Keine Division durch Null");
return;}
System.out.println("Ergebnis:" + " " + (x / y));
break;
default:
System.err.println("Unbekanntes Rechenzeichen:" + " " + operator);
}
}
}