Java 简单的计算器问题,没有阅读答案

Java 简单的计算器问题,没有阅读答案,java,Java,可能重复: 嗨,现在我的代码基本上取最后一个值,用相同的数字进行计算 所以 5+6=12 如何存储操作数,然后在计算中使用它们 public double getResult(){ if (getOperator() == '+') { result = (getOperand() + getOperand()); } if (getOperator() == '-')

可能重复:

嗨,现在我的代码基本上取最后一个值,用相同的数字进行计算 所以 5+6=12 如何存储操作数,然后在计算中使用它们

 public double getResult(){

      if (getOperator() == '+')
          {

             result = (getOperand() + getOperand());

          }

             if (getOperator() == '-')

          {

             result = (getOperand() - getOperand());

          }

          if (getOperator() == '*')

          {

             result = (getOperand() * getOperand());

          }

          if (getOperator() == '/')

          {

             result = (getOperand() / getOperand());

          }


          return result;

    }


public boolean getanswer(String value)

{

boolean isnum = false;

 try {

         setOperand(Double.parseDouble(value));

         operand = (Double.parseDouble(value));

         getResult();

         isnum =  true;



    }

 catch(Exception e)

 {

        try {

          setOperator(value.charAt(0));

          operator = (value.charAt(0));

          isnum = false;

        }

        catch(Exception e2)

        {

         System.out.println("Enter a number");

        }

您可以按以下方式重组您的计划,以获得您想要的:

  • 读取第一个操作数并保存到变量操作数1中
  • 读取运算符并保存到变量运算符中
  • 读取第二个操作数并保存为变量操作数
  • 执行计算结果=操作数1运算符操作数2
  • 如果您想循环此步骤,可以添加另一个步骤:5。将操作数1替换为结果并转到2

    在您的设计中,尝试在单个计算器类中实现这一点。由于没有“main”循环,因此必须以某种方式保存当前的状态(例如,类似于算法的步数)。这将导致如下结果:

    • 如果我处于状态1,并且输入了一个操作数:保存在变量operand1中,并将状态变量更新为2
    • 如果我处于状态2,并且有一个操作符进入:保存在变量操作符中,并将状态变量更新为3

    Duplicate()lol@Duplicate Homework由同一个用户发布,真是太棒了。现在问题也在动态变化。你能写一个清楚的问题吗?回答这个问题需要所有的代码吗?为什么你把这个(几乎)相同的问题贴了两次?