概述
如果我正在使用double,并将其转换为float,它如何工作? 值会被截断以适合浮点数吗? 还是舍入值不同? 抱歉,这听起来有点补救,但是我正在尝试掌握float和double转换的概念。
stackoverflow.com/a/2781125/986169
根据Java语言规范的第5.1.3节:
A narrowing primitive conversion from double to float is governed by the IEEE 754 rounding rules (§4.2.4). This conversion can lose precision, but also lose range, resulting in a float zero from a nonzero double and a float infinity from a finite double. A double NaN is converted to a float NaN and a double infinity is converted to the same-signed float infinity.
第4.2.4节说:
The Java programming language requires that floating-point arithmetic behave as if every floating-point operator rounded its floating-point result to the result precision. Inexact results must be rounded to the representable value nearest to the infinitely precise result; if the two nearest representable values are equally near,
最后
以上就是激情魔镜为你收集整理的java 从double转换到float_关于浮点数:在Java中从double转换为float的全部内容,希望文章能够帮你解决java 从double转换到float_关于浮点数:在Java中从double转换为float所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复