java中的小问题,请大家帮忙解决

来源:百度知道 编辑:UC知道 时间:2024/05/26 05:00:41
package lib;
public class SimpleCalculator {
private String first;
private String second;
private double result ;
private String operator;
public String getFirst() {
return first;
}
public void setFirst(String first) {
this.first = first;
}
public String getOperator() {
return operator;
}
public void setOperator(String operator) {
this.operator = operator;
}
public double getResult() {
return result;
}
public void setResult(double result) {
this.result = result;
}
public String getSecond() {
return second;
}
public void setSecond(String second) {
this.second = second;
}
public void calculate(){
double one=Double.parseDouble(first);
double two=Double.parseDouble(second);
try {
if(operator.equals("+"))result=

double one=Double.parseDouble(first);
double two=Double.parseDouble(second);

first和second并没有赋值,默认值为null
你并没有构造函数来初始化这两个字符串
虽然都有set方法,但是你没有先使用set方法就先调用calculate
所以出现空指针异常,小心一点~~呵~

应该是你没有初始化的原因,导致转换的时候出现空指针(java.lang.NullPointerException )。
改成
private String first ="";
private String second = "";
看看。

这段代码没有什么问题,关键是你要给first和second要传入浮点型的字符串,而且要给operator赋值.

这个应该不是你程序的问题吧,那个报空指针的问题先查第一个,也就是你的991行.我们不知道是什么,所以不知道怎么给你改.我估计是你前面的哪里出现了空指针的问题