这是代码,最后第二行无法编译出来,因为结果是int?所以,我可以吗 解决java中的每个非整数类型在算术中都作为整数处理吗? 我正在向所有人学习英语,谢谢。
byte a=0;
for(int i=0;i<128;i++){
a=(byte)i;
}
byte b=1;
byte c=0;
c=b+a;
System.out.println(b);
最佳答案
Java 中两个 shorts
或 bytes
之间的加法操作发生在将两个操作数都转换为 int
后,并产生 int
。因此,您需要将结果转换为 byte
,因为这是有损转换。请参阅this
关于java - byte 加 byte ?所有操作数自动转换为 int ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48356452/