byte a = 5 或者 byte a = 5 * 10 后面都是一个常量整数,只要是不超过byte精度的常量 都正确但是你下面的 byte b = a * 10 a是变量了,变量参与运算,会自动往大类型转换,于是结果就是int型你把int赋给byte b自然就超过精度了要想通过必需强转