【发布时间】:2023-03-17 01:51:02
【问题描述】:
我有一个简单的程序:
public class Mathz {
static int i = 1;
public static void main(String[] args) {
while (true){
i = i + i;
System.out.println(i);
}
}
}
当我运行这个程序时,我在输出中看到的只是0 for i。我预计第一轮我们会有i = 1 + 1,然后是i = 2 + 2,然后是i = 4 + 4等等。
这是因为一旦我们尝试在左侧重新声明i,它的值就会重置为0?
如果有人能告诉我更详细的信息,那就太好了。
将int 更改为long,它似乎正在按预期打印数字。我对它达到最大 32 位值的速度感到惊讶!
【问题讨论】:
标签: java math variable-assignment