byte a = 3;
为什么能正常执行呢?3默认为int类型不是吗?int的值赋给byte
你试一下 300, 3000, 看看有什么结果。
byte a = 300不能正常运行,我觉得可能和byte的范围有关系,但是
byte a = 3;
byte b = 4;
byte c;
c = a + b;
这里的byte c也是赋予了一个int类型,而且没有超过byte的范围,为什么又不能正常运行了呢
varDemo.java:9: 错误: 不兼容的类型: 从int转换到byte可能会有损失
c = a + b;
因为 (a + b) 成为了一个 int
3赋给a,不是也是int赋给byte吗?