【发布时间】:2020-07-27 16:34:25
【问题描述】:
byte a = 1;
byte b = 1;
byte c = a + b;
抛出错误:可能损失精度
byte subt = a_s - a_b;
^
required: byte
found: int
这种行为是否与 jvm 有关或它是用 java 语言定义的。
编辑:如果它是用 java 语言定义的,那么是因为要记住 jvm 吗?
表示如果java支持byte数据类型那么为什么operation on byte结果int
【问题讨论】:
-
字节 c = a + b;结果出错... b+=a;编译成功。为什么?
-
@HarshGoswami 见stackoverflow.com/q/8710619/2891664
标签: java type-conversion byte operation type-promotion