Java平方根整数运算没有铸造?
发布时间:2020-12-14 05:34:57 所属栏目:Java 来源:网络整理
导读:Math.sqrt()函数以double作为参数,返回double.我正在使用一个在所有情况下使用完美的方形网格的程序,我需要以整数形式获取平方根.这样做的唯一方法是将参数转换为int,然后返回一个int-casted double? 解决方法 铸造技术比起来看起来好多了. 从int到double的
Math.sqrt()函数以double作为参数,返回double.我正在使用一个在所有情况下使用完美的方形网格的程序,我需要以整数形式获取平方根.这样做的唯一方法是将参数转换为int,然后返回一个int-casted double?
解决方法
铸造技术比起来看起来好多了.
从int到double的转换是准确的. 指定Math.sqrt,对于正常的正数,返回“最接近参数值的真数学平方根的双值”.如果输入是一个完美的方块int,结果将是一个整数值double,它在int范围内. 类似地,该整数值双重转换为int也是精确的. 净效果是铸造技术在您的情况下不会引入任何舍入误差. 如果您的程序否则将受益于使用Guava intMath API,则可以使用它来执行平方根,但是我不会添加对API的依赖关系,以避免转换. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |