窄化类型转换

2021-08-30  本文已影响0人  Shaw_Young

窄化类型转换(Narrowing Numeric Conversion)

1.转换规则

Java虚拟机也直接支持以下窄化类型转换:

2.精度损失问题

窄化类型转换可能会导致转换结果具备不同的正负号、不同的数量级,因此,转换过程很可能会导致数值丢失精度。

尽管数据类型窄化转换可能发生上限溢出、下限溢出和精度丢失等情况,但是Java虚拟机规范中明确规定数值类型的窄化转换指令永远不可能导致虚拟机抛出运行时异常。

3.补充说明

3.1当将一个浮点值窄化转换为整数类型T(T限于int或者long类型之一)的时候,将遵循以下转换规则:

3.2 当将一个double类型窄化转换为float类型时,将遵循以下转换规则:
通过向最接近数舍入模式舍入一个可以使用float类型表示的数字。最后结果根据下面3条规则判断:

梦想很模糊,去追,它会渐变清晰。青春励志,奋斗下去别放弃。

上一篇下一篇

猜你喜欢

热点阅读