java - 错误: variable might not have been initialized

标签 java

我无法找到我得到的原因:

variable might not have been initialized

示例1:

class Test {
    public static void main(String[] args) {
        int i = 10;
        int j;
        if (i == 10) {
            j = 20;
        }
        System.out.println(j);
    }
}
Test.java:11: error: variable j might not have been initialized
System.out.println(j);
                   ^
1 error

示例2:

class Test {
    public static void main(String[] args) {
        int i = 10;
        int j;
        if (i == 10) {
            j = 20;
        } else {
            j = 30;
        }
        System.out.println(j);
    }
}

输出:

20

我的疑问是在第二个例子中,j是如何初始化的?

最佳答案

第一种情况,如果 i != 10 j 期间不会被初始化

System.out.println(j);

在第二个示例中,j 的值始终为 (i != 10 j 为 30)

System.out.println(j);

注意

**might not** be initialized

关于java - 错误: variable might not have been initialized,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36364886/

相关文章:

java - 如何使用在我的 Windows 机器上运行的 Java 代码写入 Linux 中的文件?

java - 通过 Tomcat 7.0/Axis2 的安全连接抛出异常

java - Fragment 中的 findViewById 出现 NullPointerException

java - 只需要帮助启动一个从 c++/c 转移到 mips 的程序

java - 我应该如何针对不同的分辨率缩放菜单大小?

java - 当 JButton ActionEvent 执行时,如何通知具有 GUI 构建器类实例的类

java - 无论如何要排除从父 POM 继承的 Artifact ?

java - NanoHTTPD 示例构建错误

java - 从 MQTT 获取已在使用中的持久性错误

java - Tomcat 6 堆大小 - 这是正确的吗?