Yuki_Saber
Yuki_Saber
采纳率100%
2015-07-21 09:17

我怎么通过运算符来计算,我是直接调用方法计算的,楞是想不出怎么通过运算符这个属性来搞

已采纳

写一个计算器类,包含第一个数字,第二个数字,运算 符三个属性,加减乘除4个方法,计算50X2/4>>2的结果,并判断这个 值是否大于30且小于60,并给出不同的提示.
下面是我写的代码,我没用到运算符这个属性,怎么用到这个属性啊
public class Computer{
public int num1;
public int num2;
public char operator;
//加方法
public float sum(int num1,int num2){
int sum = num1+num2;
return sum;
}
//减方法
public float minus(int num1,int num2){
int minus = num1 - num2;
return minus;
}
//乘方法
public int mul(int num1,int num2){
int mul = num1 * num2;
return mul;
}
//除方法
public int div(int num1,int num2){
int div=0;
if(num2==0)
System.out.println("出错,除数不能为0");
else
{
div = num1/num2;
return div;}
return div;
}
public static void main(String[] args){
Computer result = new Computer();

     int res=result.div(result.mul(50,2),4)>>2;
     System.out.println(res);
     if(res>30&&res<60)
             System.out.println("值大于30且小于60");
     else if(res<=30)
         System.out.println("值小于或等于30");
     else if(res>=60)
         System.out.println("值小于或等于60");
   }

}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答

  • danielinbiti danielinbiti 6年前
     增加一个方法
     public float opt(int num1,int num2,char operator){
            switch(operator){
            case '+':
            //调用加的函数
                break;
            case '-':
            //调用加的函数
                break;
            case '*':
            //调用加的函数
                break;
            case '/':
            //调用加的函数
                break;
            }
        }
        调用时result.opt(50,2,'*');
    
    点赞 评论 复制链接分享
  • tongyi55555 JonsonJiao 6年前

    你的计算方法都是public的了,外部可以直接调用了就不用运算符了,如果你想用的话,就将你的计算法私有化,然后根据传入的运算符来判断具体调用哪个计算方法。上面有大神给出了switch方法来判断,注意的是这个要1.7版本或以上版本的jdk支持。

    点赞 1 评论 复制链接分享
  • qq_30004097 qq_30004097 6年前

    public float opt(int num1,int num2,char operator){
    switch(operator){
    case '+':
    //调用加的函数
    break;
    case '-':
    //调用加的函数
    break;
    case '*':
    //调用加的函数
    break;
    case '/':
    //调用加的函数
    break;
    }
    }
    调用时result.opt(50,2,'*');

    点赞 评论 复制链接分享