字节精度可能会丢失

时间:2015-12-23 18:02:14

标签: java

我的代码是

class Bauua {
    public static void main(String...args) {
        byte a = 10; byte b = 20;
        byte c = a+b;
        System.out.println(c);
    }
}

编译时我遇到以下错误

error: possible loss of precision 
byte c= a+b;
required: byte
found:    int 

但是当我使用byte c=(byte)(a+b);代替byte c = a+b;它正在成功编译时,所以我的问题是为什么我需要在所有3个变量(即a,b和c)都是字节数据时强制转换它类型?

1 个答案:

答案 0 :(得分:1)

int,此处BoxLayout运算符将返回component.setAlignmentX(Component.CENTER_ALIGNMENT); ,这就是您需要使用演员表的原因。