我試圖創建一個簡單的計算器,但當我嘗試將操作添加到按鈕時出現此錯誤。該方法parsedouble雙字符串類型double不適用於參數double
在double類型的方法parsedouble串不適用於參數雙
我與數字1,數字和結果的錯誤,當我嘗試加倍的文本,相反轉換。
我無法將JTextField中轉換爲字符串這會影響我創建
這裏的框架是我的代碼: 進口java.awt中的*;
public class ShowGridLayout extends JFrame { // Declaring the class
public ShowGridLayout() {
getContentPane().setLayout(new GridLayout(4,2));
JLabel label = new JLabel("First Number");
getContentPane().add(label);
JTextField text = new JTextField(8);
getContentPane().add(text);
JLabel label1 = new JLabel("Second Number");
getContentPane().add(label1);
JTextField text1 = new JTextField();
getContentPane().add(text1);
JLabel label2 = new JLabel("Result is");
getContentPane().add(label2);
JTextField text2 = new JTextField();
text2.setEditable(false);
getContentPane().add(text2);
JButton btn = new JButton("Click here");
getContentPane().add(btn);
setVisible(true);
setSize(400,200);
setResizable(false);
setLocationRelativeTo(null);
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
double number1, number2, result;
try {
number1 = Double.parseDouble(text);
number2 = Double.parseDouble(text1);
result = number1*number2;
text2.setText(Double.toString(result));
} catch(Exception e1){
JOptionPane.showMessageDialog(null, "Please add a number");
}
}
});
}
public static void main (String args[]) { // Creating the main method
ShowGridLayout frame = new ShowGridLayout();
}
}
'text'是一個'JTextField',而不是'String'。你不能在'JTextField'上使用'Double.parseDouble',你必須在'JTextField'的_contents_上使用它,你必須提取它。 –
嗨路易斯,你能解釋更多關於提取物嗎? –