各位牛人,请问:我点击按钮时为什么总是出现异常:
这是处理代码:
public void actionPerformed(ActionEvent e){
double n1;
String s=e.getActionCommand();
if(e.getSource()==numberButton[1]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[2]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[3]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[4]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[5]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[6]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[7]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[8]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[9]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[0]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==clearZero){
resultJTF.setText("");
}
if(e.getSource()==point){
if(d==0.)
resultJTF.setText(e.getActionCommand());
else
resultJTF.setText(resultJTF.getText()+e.getActionCommand());
d=1;
}
if(e.getSource()==Add){
try{
double n=Double.parseDouble(s);
n=n+n;
resultJTF.setText(""+n);
}catch(Exception e1){}
}else if(e.getSource()==sub){
try{
double n=Double.parseDouble(s);
n=n-n;
resultJTF.setText(""+n);
}catch(Exception e2){}
}else if(e.getSource()==mul){
try{
double n=Double.parseDouble(s);
n=n*n;
resultJTF.setText(""+n);
}catch(Exception e3){}
}else if(e.getSource()==div){
try{
double n=Double.parseDouble(s);
n=n/n;
resultJTF.setText(""+n);
}catch(Exception e4){}
}else if(e.getSource()==sqrt){
double n=Double.parseDouble(s);
try{
n1=java.lang.Math.sqrt(n);
resultJTF.setText(""+n1);
}catch(Exception ee){}
}
else if(e.getSource()==mod){
d=d/100;
resultJTF.setText(""+d);
}
else if(e.getSource()==plus){
d=-d;
d=+d;
}
else if(e.getSource()==Pos){
d=1/d;
}
}
帮忙解决一下,谢谢
这是处理代码:
public void actionPerformed(ActionEvent e){
double n1;
String s=e.getActionCommand();
if(e.getSource()==numberButton[1]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[2]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[3]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[4]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[5]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[6]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[7]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[8]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[9]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==numberButton[0]){
double n=Double.parseDouble(s);
resultJTF.setText(""+n);
}else if(e.getSource()==clearZero){
resultJTF.setText("");
}
if(e.getSource()==point){
if(d==0.)
resultJTF.setText(e.getActionCommand());
else
resultJTF.setText(resultJTF.getText()+e.getActionCommand());
d=1;
}
if(e.getSource()==Add){
try{
double n=Double.parseDouble(s);
n=n+n;
resultJTF.setText(""+n);
}catch(Exception e1){}
}else if(e.getSource()==sub){
try{
double n=Double.parseDouble(s);
n=n-n;
resultJTF.setText(""+n);
}catch(Exception e2){}
}else if(e.getSource()==mul){
try{
double n=Double.parseDouble(s);
n=n*n;
resultJTF.setText(""+n);
}catch(Exception e3){}
}else if(e.getSource()==div){
try{
double n=Double.parseDouble(s);
n=n/n;
resultJTF.setText(""+n);
}catch(Exception e4){}
}else if(e.getSource()==sqrt){
double n=Double.parseDouble(s);
try{
n1=java.lang.Math.sqrt(n);
resultJTF.setText(""+n1);
}catch(Exception ee){}
}
else if(e.getSource()==mod){
d=d/100;
resultJTF.setText(""+d);
}
else if(e.getSource()==plus){
d=-d;
d=+d;
}
else if(e.getSource()==Pos){
d=1/d;
}
}
帮忙解决一下,谢谢
代码也有写相应的注释啊,这可读性是很重要的
e.getSource()==numberButton[1]
能用switch么?楼主,你就把异常或者现象还有出错的代码贴出来,也许明眼人一看就知道怎么回事。