gpt4 book ai didi

Java - 为什么将 F 附加到 `float a=0.32F` 告诉它在 a 中存储 32 位 float ,但执行 `float a = 0.32` 却告诉它你想存储 64 位 double ?

转载 作者:行者123 更新时间:2023-11-29 04:13:41 24 4
gpt4 key购买 nike

<分区>

我正在学习 Bart Baesens、Aimee Backiel 和 Steppe vanden Broucke 合着的“Java 编程入门”。

我说的是在将文字分配给标识符时附加和不附加字母之间的区别。例如:

float 比率 = 0.234

相比于:

float 比率 = 0.234F

在我正在查看的页面上(我在书中的其他任何地方都看不到说明)根本没有帮助。

谷歌搜索会得到许多不太明确的答案。我确实在 Quora 上找到了以下答案:

"当解释器看到 float ratio = 0.234;它知道 float 是什么意思,因为它是一个保留关键字它推断比率是一个标识符= 是赋值运算符0.234 是双字面量和;是分隔符因为这就是语言的定义方式。所以该语句在语法上是正确的,但是当语义检查开始时,它发现您正在尝试将 64 位 double 文字存储到 32 位浮点变量中,这将导致精度损失,因此它会给您一个错误或警告."

但为什么 float ratio = 0.234 会让它认为我想将 64 位 double 字面值赋给 32 位浮点变量?我是说。我实际上是在告诉它我想要一个 float ,所以一定还有另一个我失踪的原因。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com