我知道 double 可能不够精确。但是,我找不到使用 BigDecimal 的方法。我试过
while(Math.log10(Math.abs(a.subtract(new BigDecimal(1.41421356237309504880168872420969807856967187537694))) >= -50 || Math.log10(Math.abs(b.subtract(new BigDecimal(1.41421356237309504880168872420969807856967187537694)))) >= -50 )
{
\\ stuff goes here
}
但它说我不能对 BigDecimals 使用 log 10 或绝对值。