java - if 语句中的变量递增

标签 java counter increment

这是一段代码(else 子句):

else { // for operators
            int count = 1;
            if (sub.compareTo("+") == 0){ //if + operator
                double d1=stack.pop();
                double d2=stack.pop();
                answer=d1+d2;
               //first two items on stack added
                stack.put(answer); // put ans on stack
               System.out.println(count+ ") "+d1+ " + " +d2 + " = " +answer); // display ans
               count++;
            }
            if (sub.compareTo("-") == 0){ //if - operator
                double d1=stack.pop(); //pop first two items on stack
                double d2=stack.pop();
                answer =d2-d1; //subtract the items
                stack.put(answer);//put ans on stack
                System.out.println(count+ ") "+d2+ " - " +d1 + " = " +answer);///display answer
                count++;
            }
}

此代码尝试使用 stack 来评估基本数学运算。例子有:

  1. 2 + 2 = 4
  2. 4 + 4 = 8

我想使用count变量来显示数字,但它保持为 1。你知道为什么吗?

最佳答案

创建您的 count 全局变量并在函数外部声明它以正确存储值,您所做的是限制 count 的范围,这就是为什么他每次都给您相同的答案

int count=1;  // make sure you count is outside your function 
else{ // for operators

            if(sub.compareTo("+")==0){ //if + operator
                double d1=stack.pop();
                double d2=stack.pop();
                answer=d1+d2;
               //first two items on stack added
                stack.put(answer); // put ans on stack
               System.out.println(count+ ") "+d1+ " + " +d2 + " = " +answer); // display ans
               count++;
            }
            if(sub.compareTo("-")==0){ //if - operator
                double d1=stack.pop(); //pop first two items on stack
                double d2=stack.pop();
                answer =d2-d1; //subtract the items
                stack.put(answer);//put ans on stack
                System.out.println(count+ ") "+d2+ " - " +d1 + " = " +answer);///display answer
                count++;
            }

关于java - if 语句中的变量递增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35826108/

相关文章:

java - 将写入字符串的整数求和

java - 如何获得猜谜游戏的计数器

mysql - ON DUPLICATE KEY UPDATE - 减少 MySQL 中的值

c++ - 类成员函数的模板特化,以便不在 bool 上使用增量运算符

java - JSP 中的变量没有增加

java - 如何删除word文档中的超链接和图片?

java - 关于压缩库在不考虑 cpu 开销的情况下使 byte[] 尽可能小的建议?

java - 有序流的减少是否按顺序减少?

java - 计数器关闭 JFrame,弹出确认对话框

javascript - 运行 for 循环。增加值;退出并使用新值再次开始循环