大神帮帮忙,这个程序的错怎么改

/*
定义一个计算器类,要求实现加减乘除操作。
/

import java.util.
;

public class HomeWork_1110_02

{

public static void main(String[] args)

{

Scanner sc=new Scanner(System.in);

System.out.println("请输入第一个数的值:");

double a=sc.nextInt(); //从控制台接收第一个数字

    System.out.println("请输入第二个数的值:");  
    double b=sc.nextInt();               //从控制台接收第二个数字  

    String s1="+";                      //定义运算符号  
    String s2="-";  
    String s3="*";  
    String s4="/";  

    System.out.println("请选择一种运算:+,  -,  *,  /");  
    String s=sc.next();                  //从控制台接收运算符号  

    Jisuanqi js=new Jisuanqi();           //实例化一个对象  


    if(s.equals(s1))                     //判断输入的运算符号,根据接收的运算符号进行运算 ,加运算  
    {  

      double result=js.add(a,b);         //调用加法运算  

      System.out.println(result);  
    }  

    else if(s.equals(s2))               //减运算  
    {  

      double result=js.jian(a,b);       //调用减法运算  

      System.out.println(result);  
    }  
    else if(s.equals(s3))              //乘法运算  
    {   
        if(a==0 || b==0)          //判断输入的数字是否有0  
        {  
            System.out.println("0");  
        }  

      double result=js.cheng(a,b);    //调用乘法运算  

      System.out.println(result);  
    }  
    else if(s.equals(s4))             //除法运算  
    {  
        if(b==0)                 //判断除数是否为0  
        {  
            System.out.println("除数不能为0,请重新输入!");  
        }  
      double result=js.chu(a,b);     //调用除法运算  

      System.out.println(result);  
    }  
    else  
    {  
      System.out.println("您选择的运算方式不在范围内,请重新选择!");  
    }  
}  

}

class Jisuanqi //创建一个计算器类

{

//double number;

double add(double a,double b)  //创建加法运算  
{  
  double c=a+b;  
  return c;  
}  
double jian(double a,double b)//创建减法运算  
{  
  double c=a-b;  
  return c;  
}  
double cheng(double a,double b)//创建乘法运算  
{  
  double c=a*b;  
  return c;  
}  
double chu(double a,double b)//创建除法运算  
{  
  double c=a/b;  
  return c;  
}  

}

有错误就用断点调试,呵呵呵

首先,从控制台读取数据并转换为double,那么你就要考虑使用者是否老老实实地给你输入数字了,如果我的输入不是数字怎么办?程序肯定报错了,这时你就需要去处理这个 Exception。

 System.out.println("请输入第一个数的值:");
        double a = 0;
        try {
            // 从控制台接收第一个数字
            a = sc.nextInt();
        } catch (Exception e) {
            // 出错后的操作
            // .........
        }

而且代码结构上需要再改改,main() 方法中一般就不要有具体的逻辑代码了,把 main() 中的逻辑代码抽出来独立成一个方法,然后在 main() 中再去调用这个方法,最明显的便是你对于 +、-、*、/ 运算符的判断了,遇到这种情况就不要使用一大堆的 if...else...了,太臃肿了,而且效率也不高,建议用 switch 语句进行判断,不仅高效、而且也提高了代码的可读性。

如果可以,把你的jisuanqi这个类做成接口,具体要怎样实现计算,你再另外写实现类。

最后,方法命名注意规范,add、jian、cheng、chu 这样中西合璧的还是不要了吧。