Java - 为什么我不能在 while 循环中更改变量?

标签 java

<分区>

出于某种原因,每当我这样做时:

public class Main {
    public static void main(String[] args) {
        boolean c = true;
        int i = 0;
        while (i < 10) {
            System.out.println(c);
            c = false;
            i++;
        }
    }
}

每次都打印 true

编辑: 我跑了几次,比第 5 次成功了!我很困惑。我想我构建错了……我猜。

最佳答案

您一定是编译/构建错误。我的输出:

true
false
false
false
false
false
false
false
false
false

...完全符合预期。 (这是针对最新的 Oracle JDK,尽管我无法想象任何其他 JVM 的行为会有所不同 - 如果它这样做肯定会非常糟糕。)

关于Java - 为什么我不能在 while 循环中更改变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18776452/

相关文章:

java - Spring Hadoop 配置 - 没有符合条件的 org.apache.hadoop.conf.Configuration 类型的 bean

java - 如何在JAVA中使用PrintWriter从顶部写回?

java - 使用 HttpURLConnection 执行 POST 请求时获取 JSON 响应

java - wildfly:从配置目录读取属性

java - Hibernate的MariaDB方言类名称是什么?

java - "USB Host support is unavailable"消息的根本原因是什么?

网站上的 Java 游戏服务器

java - SLF4J - 它如何知道要使用哪种日志类型

java - 从 xml 转换时是否可以保持 JSON 的排序,反之亦然

javascript - 从以下模式中捕获字符串的正则表达式