Java 计算双负指数

Java 计算双负指数,java,double,pow,exponential,Java,Double,Pow,Exponential,我想知道如何用Java计算这个方程,因为指数可以是负数 等式示例: D_DL=10^((149.874-69.55-26.16 log_10(900)+13.82 log_10(60)+1.115)/([44.9-6.55 log_10(60)])) 这里我想计算我的指数 double exposantD = ( Mapldl_s - 69.55 -( 26.16 * Math.log10(_BF_) )+ (13.82 * Math.log10(HB_)) + _ahm_) / (4

我想知道如何用Java计算这个方程,因为指数可以是负数

等式示例:

D_DL=10^((149.874-69.55-26.16 log_10(900)+13.82 log_10(60)+1.115)/([44.9-6.55 log_10(60)]))
这里我想计算我的指数

double   exposantD =  ( Mapldl_s - 69.55 -( 26.16 * Math.log10(_BF_) )+ (13.82 * Math.log10(HB_)) + _ahm_)  / (44.9 - (6.55 *Math.log10(HB_)));
我尝试使用此功能:

public static double powMyExpo(double base, double exponent) {
double result = 1;

            if (exponent == 0) {
            return result;
            } 
            if (exponent < 0) {
            return 1 / powMyExpo(base, exponent * -1);
            }
            for (int i = 1; i <= exponent; i++) {
            result = result * base; 
            }
            return result;
}
但结果总是=1


谢谢

Math.powbase,exponent应该已经能够处理负指数了。为什么你要自己去实现呢?这是时间关键代码吗?我做了一些简单的测试,该方法运行良好,至少对于整数指数。请给出输入失败的示例。另外,考虑到bug在别处的可能性,也许是指数为零或基础为零。“MARCO13感谢RePaly,我认为它不接受否定。”PatriciaShanahan是的,你是对的,我的指数等于0.8,也就是我的指数,我只是用Math.powbase,指数,很好,谢谢