Fehler mit try + catch verhindern

babuschka

Top Contributor
Java:
import javax.swing.JOptionPane;



public class Rechner1 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		float Ergebniss = 0;
		boolean fehler = false;
		
		String lol1 = JOptionPane.showInputDialog("Erste Zahl");
		String operator = JOptionPane.showInputDialog("Operator?");
		String lol2 = JOptionPane.showInputDialog("Erste Zahl");
		float zahl1 = Float.parseFloat(lol1);
	    float zahl2 = Float.parseFloat(lol2);
		if (operator.equals("+")){
			Ergebniss = zahl1 + zahl2;
		}if (operator.equals("-")){
			Ergebniss = zahl1 - zahl2;		
		}if (operator.equals("/")){
			Ergebniss = zahl1 / zahl2;
		}if (operator.equals("*")){
			Ergebniss = zahl1 * zahl2;
		}
		else {
			fehler = true;
		}
		if (fehler == false){
		JOptionPane.showMessageDialog(null, "Das Ergebniss ist " + Ergebniss);
		}
		if (fehler == true){
			JOptionPane.showMessageDialog(null, "Fehler bei Eingabe der Operatoren");
		}


	}
}
ich möchte, dass falls jemand einen buchstaben bei zahl eingibt, ein fenster kommt und sagt "keine buchstaben eingeben" oder so.
ich habe es mit try + catch versucht, aber bei mir gibt es immer errors( sie sind nicht in dem code jetzt drin)
 
Zuletzt bearbeitet von einem Moderator:
Hi,

ich sehe keinen try-catch Konstrukt in deinem Code.

Meine Glaskugel zeigt auch nicht an, welche "errors" es sind.

Sorry.

Gruß
:bahnhof:
 
ich habe sie wieder entfert
ich wollte eig. dass jemand mir den code für den fehler gibt, weil ich nichts fand und auch mit try/catch nie gearbeitet habe
 
Java:
if(meineEingabe ist keine Zahl) {
  // Message Box
}

Ansonsten empfehle ich Literatur zum Thema try-catch
 
also mal davon abgesehen würde ich für das prüfen des operators switch-case verweden ... dafür brauchst du aber Java7
 
Code:
float zahl1;
try {
  zahl1 = Float.parseFloat(lol1);
} catch (java.lang.NumberFormatException e) {

  System.out.println("zahl1 muss eine Zahl sein"); //oder halt ne messagebox

}
 

Neue Themen


Zurück
Oben