java - Java中的 float 是什么?

标签 java floating-point

我写了这段代码:

float b = 3.6;

我明白了:

Error:Unresolved compilation problem: 
    Type mismatch: cannot convert from double to float

为什么? float的定义是什么?

最佳答案

在 Java 中,当您将十进制数字键入为 3.6 时,它会被解释为 doubledouble 是 64 位精度的 IEEE 754 浮点,而 float 是 32 位精度的 IEEE 754 浮点。由于 float 不如 double 精确,因此无法隐式执行转换。

如果你想创建一个 float ,你应该以 f 结束你的数字(即:3.6f)。

更多解释见primitive data types definition of the Java tutorial .

关于java - Java中的 float 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5076710/

相关文章:

java - 比较 int 和 Integer 的性能

floating-point - 使用 IEEE 754 32 位浮点格式可以实现的最接近 1/3 的值是多少?

Python Cassandra float 精度损失

.net - 双入.net

c - 在 C 中实现 ceil()

java - 如何在android中的文件中包含字符串数组中的路径

java - 如何在不打开网站的情况下从网站获取信息

java - 创建一个txt文件,并将类名作为txt的名称

java - 通常的 Twitt_Sharing 类给出错误

javascript - 将 4 个 8 位无符号整数打包为 32 位 float