D
Diode
Gast
Hallo,
Habe eine Frage zu einem Problem, wobei ich zu diesem Problem nicht viel im Internet finde.
Es wird eine [c]NumberFormatException[/c] geworfen. Habe den entsprechenden Codeteil auch abgefangen, soweit ich sehen konnte.
Die Exception-Meldung.
Der COde der ausgeführt wird, wobei nichts geschieht, ausser einer Exception.
Vielen Dank
D.
Habe eine Frage zu einem Problem, wobei ich zu diesem Problem nicht viel im Internet finde.
Es wird eine [c]NumberFormatException[/c] geworfen. Habe den entsprechenden Codeteil auch abgefangen, soweit ich sehen konnte.
Die Exception-Meldung.
Java:
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For inpu
t string: "1+3"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Double.parseDouble(Unknown Source)
at CalculatorTest.complete(CalculatorTest.java:217)
at CalculatorTest.actionPerformed(CalculatorTest.java:199)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour
ce)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour
ce)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour
ce)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour
ce)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Der COde der ausgeführt wird, wobei nichts geschieht, ausser einer Exception.
Java:
public void complete() {
String a = field.getText();
String temp;
ArrayList<Double> ZahlenListe = new ArrayList<Double>();
ArrayList<String> OperatorListe = new ArrayList<String>();
StringTokenizer StrToKen = new StringTokenizer(a);
while (StrToKen.hasMoreTokens()) {
temp = StrToKen.nextToken();
if(temp.equals("+")) OperatorListe.add("+");
else if(temp.equals("-")) OperatorListe.add("-");
else if(temp.equals("*")) OperatorListe.add("/");
else if(temp.equals("/")) OperatorListe.add("*");
else {
try {
ZahlenListe.add(Double.parseDouble(temp));
} catch(NumberFormatException e) {e.printStackTrace();}
}
}
if (OperatorListe.get(0).equals("+")) {plusMethode(ZahlenListe.get(0),ZahlenListe.get(1));}
if (OperatorListe.get(0).equals("-")) {minusMethode(ZahlenListe.get(0),ZahlenListe.get(1));}
if (OperatorListe.get(0).equals("/")) {divisionMethode(ZahlenListe.get(0),ZahlenListe.get(1));}
if (OperatorListe.get(0).equals("*")) {multiMethode(ZahlenListe.get(0),ZahlenListe.get(1));}
}
public void plusMethode(double wert1, double wert2) {
ergebnis = wert1 + wert2;
String ergebnis2 = Double.toString(ergebnis);
field.setText(ergebnis2);
}
Vielen Dank
D.
Zuletzt bearbeitet von einem Moderator: