gpt4 book ai didi

Java - 用于物理计算的哪种数据类型?

转载 作者:搜寻专家 更新时间:2023-11-01 02:20:02 24 4
gpt4 key购买 nike

我正在尝试用 Java 创建一个物理计算程序。因此我使用了一些公式,但它们总是返回错误的值。我将它们拆分并发现:(到目前为止,我使用了 long。)

8 * 830584000 = -1945262592

这显然是错误的。公式中有分数和很高的数字,例如6.095E23和4.218E-10。

那么哪种数据类型最适合获得正确的结果呢?

最佳答案

除非您有充分的理由不这样做,否则 double 是物理计算的最佳类型。对于电影《星际穿越》中的虫洞建模来说已经足够好了,所以,我敢说,对你来说可能已经足够好了。请注意,作为粗略指南,它只提供 15 位十进制有效数字的精度。

但是你需要帮助Java编译器:

8.0 * 830584000 为要以 double 精度评估的表达式。 8.0 是一个 double 字面量,并导致其他参数被提升为类似的类型。

目前您正在使用整数算法,并且正在观察环绕效应。

引用:https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html

关于Java - 用于物理计算的哪种数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48396767/

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