Java 如果加法的操作数类型较小,JLS在何处指定加法的结果为int?
关于,我尝试在JLS中进行快速搜索,以查找其中提到的Java 如果加法的操作数类型较小,JLS在何处指定加法的结果为int?,java,jls,Java,Jls,关于,我尝试在JLS中进行快速搜索,以查找其中提到的字节操作数之间加法的结果自动扩大到int 我找到的最好的是这个,但我在JLS中什么也没找到 这一章没有提到加法运算符,至少我找不到什么。没有提到字节的自动加宽。它提到了二元运算符的每个操作数的类型必须是可转换(§5.1.8)为基元数字类型的类型,但与加宽无关。字节是一种数据类型 我错过了什么?你就快到了,它在: 对操作数执行二进制数字提升(§5.6.2) 在Java 7中,相关部分是JLS和操作员的相应部分;e、 g.数字上二元加法运算符的JL
字节
操作数之间加法的结果自动扩大到int
我找到的最好的是这个,但我在JLS中什么也没找到
这一章没有提到加法运算符,至少我找不到什么。没有提到字节的自动加宽。它提到了二元运算符的每个操作数的类型必须是可转换(§5.1.8)为基元数字类型的类型,但与加宽无关。字节是一种数据类型
我错过了什么?你就快到了,它在: 对操作数执行二进制数字提升(§5.6.2)
在Java 7中,相关部分是JLS和操作员的相应部分;e、 g.数字上二元加法运算符的JLS 运算符部分表示首先执行二进制升级。然后,第5.6.2节解释了如果另一个操作数是整数,则对
字节
、短
和字符
的二进制提升意味着转换为int