首页 > 解决方案 > (e--) 的作用是什么?为什么当我不包含 (e--) 或键入 (e++) 时会得到错误的答案?

问题描述

我不理解 (e--) 的部分,如果我删除它或键入 (e++) 而不是我得到错误的答案

我用e++替换了e--,结果是这样的

2 到 0 的幂是 1

2 的 1 次方为 0

2的2次方为0

2的3次方为0

2的4次方为0

2的5次方为0

2的6次方为0

2的7次方为0

2的8次方为0

2的9次方为0



    public static void main(String[] args) throws IOException {
       int e;
       int result;
       for(int i=0;i<10;i++){
           result=1;
           e=i;
           while(e>0){
               result*=2;
               e--;
           }
           System.out.println("2 to the "+ i +" power is "+result);
       }
    }
}

我认为做 e-- 的目的是什么,所以我将其删除并包含 (e++),因为它支持 while 条件

标签: java

解决方案


尝试通过阅读代码来了解发生了什么。e 变量基本上是指数。您每次将其设置为索引 i,并尝试计算 2^e 值。

所以你的(?)代码做了一个while循环,e次。那个部分

e=i;
while(e>0){
  result*=2;
  e--;
}

相当于

for(int e = i; e > 0; e--) {
   result*=2; // which is a shorthand for result = result * 2;
}

推荐阅读