byte、char、short、boolean四种类型在汇编期或运行期间采取和int类型一样的存储方式,在计算时会先转换为int类型,后进行计算。所以两个short类型数据做算数运算,结果却为int类型。这主要是因为jvm的字节码为了简洁高效,设计时只使用一个字节,导致命令的数量有限,不能为所有类型设计指令,byte、char、short、boolean这四种类型都使用int的指令。
byte、char、short、boolean四种类型在汇编期或运行期间采取和int类型一样的存储方式,在计算时会先转换为int类型,后进行计算。所以两个short类型数据做算数运算,结果却为int类型。这主要是因为jvm的字节码为了简洁高效,设计时只使用一个字节,导致命令的数量有限,不能为所有类型设计指令,byte、char、short、boolean这四种类型都使用int的指令。