java返回底数为2的对数值(Java普通对数log计算方法)

作者:IT_熊

来源:CSDN

java返回底数为2的对数值(Java普通对数log计算方法)(1)

java给我提供的数学计算的工具类Math计算对数的函数有两个:

java返回底数为2的对数值(Java普通对数log计算方法)(2)

log(double a),log10(double a)从源码doc注释我们可以看到分别是计算自然对数和以10为底的对数。

如下代码:

double x = Math.log(10);

等价于:x = ln10 或 x = loge(10),即以e为底的自然对数。

问题来了,如果我们要计算非常规底数的对数怎么办呢?比如我们要计算以33为底27的对数(也就是33的多少次方运算结果为27)?

这个就需要使用数学的换底公式:logx(y)=ln(y)/ln(x);

代码实现以x为底y的对数计算工具类:

java返回底数为2的对数值(Java普通对数log计算方法)(3)

这样我们计算以33为底27的对数:

java返回底数为2的对数值(Java普通对数log计算方法)(4)

计算结果:0.9426082478202944

本demo使用log以及换底公式,也可以使用log10和换底公式计算,结果是一样的。

如:

java返回底数为2的对数值(Java普通对数log计算方法)(5)

最后,我自己是一名从事了多年开发的JAVA老程序员,今年年初我花了一个月整理了一份最适合2019年学习的java学习干货,可以送给每一位喜欢java的小伙伴,想要获取的可以关注我的头条号并在后台私信我:交流,即可免费获取。

java返回底数为2的对数值(Java普通对数log计算方法)(6)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页