小编Vir*_*gaa的帖子

整数到字节不编译

我有两个几乎相同的程序。第一个编译,第二个不编译。为什么?

我正在将一个int变量分配给一个byte变量。

这个编译:

class Example {
    public static void main(String args[]) {
        final int x = 127; // directly initialized

        byte b;
        b = x;

        System.out.println(b);
    }
}
Run Code Online (Sandbox Code Playgroud)

这个不编译:

class Example {
    public static void main(String args[]) {
        final int x;
        x = 127; // assigned later

        byte b;
        b = x;

        System.out.println(b);
    }
}
Run Code Online (Sandbox Code Playgroud)

编译器说,不兼容的类型b = x;。但是不应该同样适用于第一个版本吗?

java byte type-conversion

6
推荐指数
1
解决办法
89
查看次数

标签 统计

byte ×1

java ×1

type-conversion ×1