63得票6回答
Java:在实际世界中为什么应该使用 BigDecimal 而不是 Double?

在处理现实世界的货币值时,我被建议使用BigDecimal而不是Double。但除了“通常这样做”,我没有得到令人信服的解释。 请问您能解释一下这个问题吗?

63得票4回答
如何将一个字符串解析为BigDecimal?

我有这个字符串: 10,692,467,440,017.120(是一个金额)。 我想将它解析为BigDecimal。问题在于我尝试过DecimalFormat和NumbeFormat都失败了。

62得票7回答
更改 DecimalFormat 区域设置

我在EditText的addTextChangedListener方法中使用了自定义的DecimalFormat,一切都工作得很好,但是当我改变语言(区域设置)时,我的addTextChangedListener就不起作用了。double answer = inputDouble * coun...

62得票2回答
如何使用BigDecimal进行正确的除法运算

我的代码示例:import java.math.*; public class x { public static void main(String[] args) { BigDecimal a = new BigDecimal("1"); BigDecimal b...

62得票3回答
使用BigDecimal数字时是否需要四舍五入

我想要设置两个 BigDecimal 数字a和b的比例,就像这个例子中一样:BigDecimal a = new BigDecimal("2.6E-1095"); BigDecimal b = new BigDecimal("2.7E-1105"); int i...

59得票4回答
59得票6回答
设置 BigDecimal 的特定精度

我有一个XSD,要求我在经纬度上使用BigDecimal。目前我的经纬度是double类型,我将其转换为BigDecimal,但我只需要使用约12位精度。我一直没有找到如何设置精度的方法。有人能帮助我吗?

58得票3回答
BigDecimal乘以零

我正在使用BigDecimal进行简单的乘法运算,但是当乘以零时(在这种情况下乘以零是正确的),我发现了一些奇怪的行为。 基本数学告诉我,任何数乘以零都等于零(参见:零乘积性质和乘法性质)。 然而,以下代码将始终失败并显示相同的错误: assertEquals(new BigDecima...

56得票6回答
如何使用BigDecimal.ROUND_HALF_UP将0.745四舍五入为0.75?

我尝试了以下内容: double doubleVal = 1.745; double doubleVal1 = 0.745; BigDecimal bdTest = new BigDecimal( doubleVal); BigDecimal bdTest1 = new...

54得票7回答
为什么BigDecimal.equals方法要分别比较值和小数位?

这不是关于如何比较两个BigDecimal对象的问题 - 我知道你可以使用compareTo代替equals来做到这一点,因为equals被记录为: 与compareTo不同,此方法仅在值和规模相等时才将两个BigDecimal对象视为相等(因此,当使用此方法进行比较时,2.0与2.0...