为什么java中的Math.pow API有双参数,用double写的理由或用法是什么?
由于计算浮点数并且双重涉及精度,舍入错误等...涉及为什么没有单独的API来计算整数?
为什么没有单独的方法
答案 0 :(得分:2)
pow的结果通常是非理性的,分数的或者太大而无法存储为long
,如果你想使用整数幂,你可以使用
BigInteger bi = BigInteger.valueOf(100);
BigInteger bi2 = bi.pow(20); // 10^40
另一个原因可能是Math有许多功能,这些功能取自C,也来自常见的CPU指令集。 C只有一个浮点方法,x64只有浮点版本的pow。