将布尔值转换为布尔值(java)



我正在尝试将字符串转换为BigDecimal。

我发现我需要将DecimalFormat的setparseBigDecimal设置为true然后调用parse。不幸的是,我一直收到错误,setParseBigDecimal只接受布尔值(不接受布尔值(。我明白了,所以我试着做这个

DecimalFormat.setParseBigDecimal(Boolean.TRUE.booleanValue())

但我还是犯了同样的错误。我甚至试过这些,但仍然不能使用

DecimalFormat.setParseBigDecimal(1)
DecimalFormat.setParseBigDecimal(true)
boolean x= true;
DecimalFormat.setParseBigDecimal(x)

这是代码。

DecimalFormat.setParseBigDecimal(Boolean.TRUE.booleanValue())
DecimalFormat.parse(AmountUtil.formatForSavingOrConversion(taxAmountList.get(i)),0)
DecimalFormat.setParseBigDecimal(Boolean.TRUE.booleanValue())
DecimalFormat.parse(AmountUtil.formatForSavingOrConversion(taxAmountList.get(i)),0)

不会工作,因为setParseBigDecimalparse不是static方法,您需要创建DecimalFormat的实例才能使用它…

DecimalFormat df = new DecimalFormat();

然后。。。

df.setParseBigDecimal(Boolean.valueOf(true));
// or
df.setParseBigDecimal(true); 

工作良好。然后,您将使用此实例来解析需要的值

如果您有Boolean的实例,将其用作boolean不会导致任何错误(另一种方法并不总是有效(。但是,如果确实想要boolean的实例,请使用以下两个实例之一:

Boolean object = new Boolean(<<<VALUE>>>);
boolean primitive = object;

Boolean object = new Boolean(<<<VALUE>>>);
boolean primitive = object.booleanValue();

我正在尝试将字符串转换为BigDecimal

你的问题主题和你实际想做的是误导性的。要解析包含十进制数的字符串,您可以很容易地执行-

String someValue = "99999999999999999999.99999";
BigDecimal someDecimal = new BigDecimal(someValue);

如果字符串中包含逗号或类似内容,请先将它们去掉。

最新更新