我想创建一个计算器.my代码在“cmd”中成功运行。但是它没有在eclipse中运行。它在第79行显示错误。“Double result = d1 + d2;”这里。 错误表明: 对于参数类型java.lang.Double,java.lang.Double,运算符+未定义 请帮忙。
课程的一部分
try{
String s1 = txtFirst.getText(); String s2 = txtSecond.getText();
Double d1= Double.valueOf(s1);
Double d2= Double.valueOf(s2);
Double result = d1+d2 ;
String s = String.valueOf(result);
txtResult.setText(s);
}catch(Exception ex){
JOptionPane.showMessageDialog(null, "Invalid Input", "Input Error", JOptionPane.INFORMATION_MESSAGE);
}
答案 0 :(得分:1)
您可能正在使用不使用AutoBoxing的旧版本的Java。因此,无论是upgarde java还是使用“double”而不是像这样的“Double”。
try{
String s1 = txtFirst.getText(); String s2 = txtSecond.getText();
double d1= Double.parseDouble(s1);
double d2= Double.parseDouble(s2);
double result = d1+d2 ;
String s = String.valueOf(result);
txtResult.setText(s);
}catch(Exception ex){
JOptionPane.showMessageDialog(null, "Invalid Input", "Input Error", JOptionPane.INFORMATION_MESSAGE);
}
答案 1 :(得分:0)
您使用的是哪个java版本?因为Autoboxing和Unboxing来自Java 5.0 如果您使用的是旧的java版本,则可以直接进行类型转换。在这种情况下,您需要使用以下代码
try{
String s1 = txtFirst.getText(); String s2 = txtSecond.getText();
double d1= Double.parseDouble(s1);
double d2= Double.parseDouble(s2);
double result = d1+d2 ;
String s = String.valueOf(result);
txtResult.setText(s);
}catch(Exception ex){
JOptionPane.showMessageDialog(null, "Invalid Input", "Input Error", JOptionPane.INFORMATION_MESSAGE);
}