java中byte m=(byte)12+(byte)32;为什么没有问题,java中不是byte+byte转成int型吗??求高手解答

为啥还没人来解答啊,貌似是字面值特殊性 啊,求高人指教
2025-05-10 08:18:53
推荐回答(1个)
回答1:

你说的byte+byte自动转成int ,好像没有这种说法,最多你的数字超出byte的范围就报错,
如果是byte+int 才会自动提升成int,上面你的12和32都是在byte的范围之内,且相加后也是在其范围之内,没有报错,
如果是byte m = 12 +(byte)32
就报错了。