代码之家  ›  专栏  ›  技术社区  ›  user3714598

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

  •  0
  • user3714598  · 技术社区  · 9 年前

    我正在尝试将字符串转换为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)
    
    3 回复  |  直到 9 年前
        1
  •  1
  •   MadProgrammer    9 年前
    DecimalFormat.setParseBigDecimal(Boolean.TRUE.booleanValue())
    DecimalFormat.parse(AmountUtil.formatForSavingOrConversion(taxAmountList.get(i)),0)
    

    不起作用,因为 setParseBigDecimal parse 不是 static 方法,您需要创建 DecimalFormat 在你使用它之前。。。

    DecimalFormat df = new DecimalFormat();
    

    然后

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

    工作正常。然后,您将使用此实例解析所需的值

        2
  •  0
  •   hyper-neutrino    9 年前

    如果您有 Boolean ,将其用作 boolean 不应该导致任何错误(另一种方式并不总是有效)。然而,如果您 真正地 需要的实例 布尔型 ,请使用以下两种方法之一:

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

    Boolean object = new Boolean(<<<VALUE>>>);
    boolean primitive = object.booleanValue();
    
        3
  •  0
  •   Sajal Dutta    9 年前

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

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

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

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