short/char/byte 在定义变量时,后面赋值小于边界值,即可自动转义
右侧值小于左侧范围,编译器直接强转
右侧值大于左侧范围,编译器报错
short a = 10+1; //正确
char b = 65;
byte c = 44;
byte d = 129; //报错
byte = c + d; //在有变量的情况下会报错
byte = (byte) (c+d); //这样才正常
byte = 44 + 1; //等号右边全是常量,则正常
原文:https://www.cnblogs.com/iomc/p/11853825.html