第一题:byte在内存中占1个字节,范围是-128-127,2147483647明显超出了该范围,所以结果是-1
第二题:b+c运算的时候会向上转型先分别将b和c转换成int类型然后再进行运算,最后结果是int类型,所以得把结果转换成byte类型才能赋值给b
第三题:和第二题类型,表面看是将i强制转成byte,其实在进行加法运算的时候,又要转成int,最后结果是int,只有将最后结果强制转成byte才能赋值给b
旁白:当操作数是byte,short,int,char类型进行运算时,都会强制转成int进行运算,结果是int类型 |