优化这段代码 double getCir() { BigDecimal r = BigDecimal.valueOf(radius); BigDecimal pi = BigDecimal.valueOf(Pi); BigDecimal cir = r.add(pi).add(r).add(pi); return cir.doubleValue(); }
时间: 2023-04-02 13:00:45 浏览: 75
这段代码可以进行如下优化:
double getCir() {
BigDecimal r = BigDecimal.valueOf(radius);
BigDecimal pi = BigDecimal.valueOf(Pi);
BigDecimal cir = r.multiply(BigDecimal.valueOf(2)).add(pi.multiply(BigDecimal.valueOf(2)));
return cir.doubleValue();
}
使用 BigDecimal 的 multiply 方法可以避免多次调用 add 方法,提高代码效率。
相关问题
优化这段代码 double getCir() { BigDecimal r = BigDecimal.valueOf(radius); BigDecimal pi = BigDecimal.valueOf(Pi); BigDecimal cir = r.add(pi).add(r); return cir.doubleValue(); }
这段代码可以优化为:
double getCir() {
BigDecimal r = BigDecimal.valueOf(radius);
BigDecimal pi = BigDecimal.valueOf(Pi);
BigDecimal cir = r.multiply(BigDecimal.valueOf(2)).add(pi.multiply(r));
return cir.doubleValue();
}
这样可以减少一次加法运算,提高代码的效率。
优化这段代码 double getCir() { BigDecimal a = BigDecimal.valueOf(x); BigDecimal b = BigDecimal.valueOf(y); BigDecimal cir = a.add(b).add(a).add(b); return cir.doubleValue(); }
这段代码可以进行如下优化:
double getCir() {
BigDecimal a = BigDecimal.valueOf(x);
BigDecimal b = BigDecimal.valueOf(y);
BigDecimal cir = a.multiply(BigDecimal.valueOf(2)).add(b.multiply(BigDecimal.valueOf(2)));
return cir.doubleValue();
}
将加法运算改为乘法运算,可以提高代码的效率。