package jspdev;
import java.lang.Double;public class SimpleCalculator {
//属性声明
private String firstNumber;//第一个数值
private String secondNumber;//第二个数值
private String operator; //操作符类型
private double result; //结果

//属性操作方法
public String getFirstNumber() {
return firstNumber;
} public void setFirstNumber(String firstNumber) {
this.firstNumber = firstNumber;
} public String getOperator() {
return operator;
} public void setOperator(String operator) {
this.operator = operator;
} public String getSecondNumber() {
return secondNumber;
} public void setSecondNumber(String secondNumber) {
this.secondNumber = secondNumber;
} //返回结果
public double getResult() {
return  this.result;
}

public void calculator(){
try{
System.out.println("---3---");
double one = Double.parseDouble(firstNumber);
System.out.println("---4---");
double two = Double.parseDouble(secondNumber);
System.out.println("---5---");

if(this.operator.equals("+"))
result = one + two;
else if (this.operator.equals("-"))
result = one -two;
else if (this.operator.equals("*"))
result = one * two ;
else if (this.operator.equals("/"))
result = one / two;
}catch(Exception e){
e.printStackTrace();
}
}

}

解决方案 »

  1.   

    Double.parseDouble(secondNumber);secondNumber必须是一个非空的String,你的是吗
      

  2.   

    secondNumber为空了,就会报异常。
      

  3.   

    System.out.println("---3---");
    double one = Double.parseDouble(firstNumber);   //firstNumber这个必须为数字的字符串
    System.out.println("---4---");
    double two = Double.parseDouble(secondNumber);   //secondNumber这个也必须为数字的字符串
      

  4.   

    double one = Double.parseDouble(firstNumber);
    1.首先,你要注意firstNumber是否为null,因为看你定义的String类型的,并没有付初值
    2.要是报的是IllegalArgumentException或者是NumberFormatException说明:
    你传入的String类型的firstNumber参数不能转换为数值。
      

  5.   

    已经解决了,是我另一个页面写错了,导致firstNumber没有读取到,谢谢大家
      

  6.   

    已经解决了,是我另一个页面写错了,导致firstNumber没有读取到,谢谢大家