gpt4 book ai didi

java - double 也是一种 float 吗?

转载 作者:行者123 更新时间:2023-12-01 12:19:45 26 4
gpt4 key购买 nike

我听说double是一种更精确的数据类型,我想看看double的结果在以下程序的帮助下,但它仍然每次都会给出与 float 类似但不精确的可变结果。
floatdouble 之间有什么区别以及何时实时使用它们?
任何人都可以用简单的术语解释这种情况吗并具体说明这种行为的原因?
预先感谢:)

  public class DoubleResult {
public static void main(String[] args) {
double number=1;
for(int i=0;i<5;i++){
number=number+0.1;
System.out.println(number);
}
}

}

输出:

1.1
1.2000000000000002
1.3000000000000003
1.4000000000000004
1.5000000000000004

最佳答案

floatdouble 都是 float 。 float 是单精度(32 位) float ,而 double 是 double (因此得名)(64 位)

Name    Width in Bits   Range
double 64 1.7e–308 to 1.7e+308
float 32 3.4e–038 to 3.4e+038

你可以看到this answer有关浮点精度问题的更精确描述

关于java - double 也是一种 float 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26774167/

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