下面代码报错:
byte x; byte x1=1; byte x2=2; x=x1+x2;
原因:
(1)直接常量与变量不同,直接常量以及由直接常量组成的表达式只要值的范围符合,就可以直接赋给变量。
(2)但上述代码中x1和x2都是byte类型的变量,Java为了防止溢出,会自动把它们转为int类型运算,而int型赋给byte型可能会损失精度。
不过如果x,x1和x2都为int型,那么java 不会报错。
Posted lydbky
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java赋值的错误相关的知识,希望对你有一定的参考价值。
下面代码报错:
byte x; byte x1=1; byte x2=2; x=x1+x2;
原因:
(1)直接常量与变量不同,直接常量以及由直接常量组成的表达式只要值的范围符合,就可以直接赋给变量。
(2)但上述代码中x1和x2都是byte类型的变量,Java为了防止溢出,会自动把它们转为int类型运算,而int型赋给byte型可能会损失精度。
不过如果x,x1和x2都为int型,那么java 不会报错。
以上是关于Java赋值的错误的主要内容,如果未能解决你的问题,请参考以下文章
TP5报如下的错误 Indirect modification of overloaded element of thinkpaginatorCollection has no effect(代码片段
NDK: ant 错误 [javah] Exception in thread "main" java.lang.NullPointerException 多种解决办法(代码片段
错误记录Android Studio 编译报错 ( Could not determine java version from ‘11.0.8‘. | Android Studio 降级 )(代码片段
错误记录Android Studio 编译报错 ( Could not determine java version from ‘11.0.8‘. | Android Studio 降级 )(代码片段