gpt4 book ai didi

java - BigDecimal.divide(BD,int,RM) - BigDecimal 无法转换为双错误

转载 作者:行者123 更新时间:2023-11-30 02:16:30 32 4
gpt4 key购买 nike

情况:

  public static double pi(int a) {
return (BigDecimal.valueOf(53360*sqrt(640320))).divide(computeS(a),a,RoundingMode.HALF_DOWN);
}

与:私有(private)静态BigDecimalcomputeS(int a)

and here is the terminal

问题是,当我编译程序时,它会出现不兼容的类型错误,告诉我“BigDecimal无法转换为 double ”,当您知道BigDecimal时,这似乎是无意义的.divide(BigDecimal,int,RoundingMode) 不需要任何 double,他的多态方法也不需要......

所以我有点卡在这里了。有人可以帮忙吗?谢谢!

PS:我也尝试使用 double 而不是 BigDecimal,但正如预期的那样: terminal

最佳答案

问题不在于 divide 方法,问题在于您的 pi 方法必须返回一个 double,但您返回的是一个BigDecimal .

返回通过调用doubleValue()获得的double就它了。

return (BigDecimal.valueOf(53360*sqrt(640320))).divide(computeS(a),a,RoundingMode.HALF_DOWN).doubleValue();

关于java - BigDecimal.divide(BD,int,RM) - BigDecimal 无法转换为双错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48224886/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com