Hallo,
ich will von einem JTextField Doublewerte entgegennehmen. Dabei kommt immer dieser NullPointerException fehler.
Quelltext:
Fehlermeldung:
Woran kann das liegen habe doch korrekt umgewandelt, oder?
Will mir einen Umrechner bauen für meine Gaswerte m³ in kw/h.
Das Ergebnis soll später in lablAug_1 erscheinen, was ich auch noch nicht hinbekommen habe, auch jetzt nicht bei dieser Lösungsart als String.
MFG
MasterShredder
ich will von einem JTextField Doublewerte entgegennehmen. Dabei kommt immer dieser NullPointerException fehler.
Quelltext:
Java:
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;
import javax.swing.JTextField;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class Gasverbrauchsrechner extends JFrame {
private JPanel contentPane;
private JTextField textField;
public JLabel lblAsg;
public double zustandszahl = 0.94865;
public double brennwert = 11.290;
public String eingabe;
public double doubEingabe = Double.parseDouble(eingabe);
public double kwh;
public void verrechnung() {
kwh = doubEingabe * zustandszahl * brennwert;
}
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Gasverbrauchsrechner frame = new Gasverbrauchsrechner();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Gasverbrauchsrechner() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lblAsg_1 = new JLabel();
lblAsg_1.setHorizontalAlignment(SwingConstants.CENTER);
lblAsg_1.setBounds(108, 172, 225, 19);
contentPane.add(lblAsg_1);
JButton btnOk = new JButton("OK");
btnOk.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
eingabe = textField.getText();
verrechnung();
System.out.println(kwh);
}
});
textField = new JTextField();
textField.setBounds(108, 199, 225, 19);
contentPane.add(textField);
textField.setColumns(10);
btnOk.setBounds(169, 230, 117, 25);
contentPane.add(btnOk);
}
}
Fehlermeldung:
Code:
java.lang.NullPointerException
at java.base/jdk.internal.math.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1838)
at java.base/jdk.internal.math.FloatingDecimal.parseDouble(FloatingDecimal.java:110)
at java.base/java.lang.Double.parseDouble(Double.java:549)
at Gasverbrauchsrechner.<init>(Gasverbrauchsrechner.java:22)
at Gasverbrauchsrechner$1.run(Gasverbrauchsrechner.java:41)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Woran kann das liegen habe doch korrekt umgewandelt, oder?
Will mir einen Umrechner bauen für meine Gaswerte m³ in kw/h.
Das Ergebnis soll später in lablAug_1 erscheinen, was ich auch noch nicht hinbekommen habe, auch jetzt nicht bei dieser Lösungsart als String.
MFG
MasterShredder