gpt4 book ai didi

没有转换的 Java 平方根整数运算?

转载 作者:太空狗 更新时间:2023-10-29 23:01:13 28 4
gpt4 key购买 nike

Math.sqrt() 函数接受一个 double 作为参数并返回一个 double 。我正在使用一个在所有情况下都使用完美方形网格的程序,我需要以整数形式获得平方根。唯一的方法是将参数转换为 int 然后返回 int-casted double 吗?

最佳答案

类型转换技术比第一眼看起来要好得多。

从 int 到 double 的转换是准确的。

Math.sqrt 被指定,对于正常的正数,返回“最接近参数值的真实数学平方根的 double 值”。如果输入是一个完美的正方形 int,则结果将是一个在 int 范围内的 double 整数。

类似地,将整数值 double 转换回 int 也是准确的。

最终效果是转换技术不会在您的情况下引入任何舍入误差。

如果您的程序会从使用 Guava intMath API 中获益,您可以使用它来计算平方根,但我不会为了避免转换而添加对 API 的依赖。

关于没有转换的 Java 平方根整数运算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15212533/

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