Wo liegt der Fehler

Hi,
ich habe ein kleines Programm geschrieben doch es funktioniert nicht so wie es soll. Es soll mir 4 Doubles aus einem string ziehen.
Hier der Code:

 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
 a = Double.parseDouble(jTextField1.getText().split("x^2")[0]);
 b = Double.parseDouble(jTextField1.getText().split("x^2")[1].split("x")[0]);
 c = Double.parseDouble(jTextField1.getText().split("x^2")[1].split("x")[1].split("=")[0]);
 d = Double.parseDouble(jTextField1.getText().split("x^2")[1].split("x")[1].split("=")[1]);
 jLabel1.setText(a + "x²" + "+" + b + "x" + c + "=" + d);
 }

 private double a;
 private double b;
 private double c;
 private double d;

Das Problem besteht scheinbar schon beim einlesen des strings. Arbeite in NetBeans.
Lg der einzigware

Mal abgesehen von der etwas gewöhnungsbedürftigen Art, einen String zu splitten (und nicht z.B. mit regexp auf Teile zu matchen), würde es sehr helfen, wenn Du die Stacktrace mitliefern könntest. Dann würde man schonmal sehen, ob eine NumberFormatException geworfen wird, oder etwas anderes…

Hi,
ich hab den Fehler gefunden hier ist der funktionierende Code:

 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
 a = Double.parseDouble(jTextField1.getText().split("x²")[0]);
 b = Double.parseDouble(jTextField1.getText().split("x²")[1].split("x")[0]);
 c = Double.parseDouble(jTextField1.getText().split("x²")[1].split("x")[1].split("=")[0]);
 d = Double.parseDouble(jTextField1.getText().split("x²")[1].split("x")[1].split("=")[1]);
 jLabel1.setText(a + "x²" + "+" + b + "x" + c + "=" + d);
 }

 private double a;
 private double b;
 private double c;
 private double d;

Ich hab das x² falsch gedeutet als x^2. Falls du eine andere/bessere Methode kennst den String zu splitten wäre es sehr nett wenn du diese posten könntest.
Lg der einzigware

1 Like