【问题标题】:Getter method must return a double - how to implement DecimalFormat? [duplicate]Getter 方法必须返回一个 double - 如何实现 DecimalFormat? [复制]
【发布时间】:2017-05-26 01:43:51
【问题描述】:

我需要 getter 返回一个双精度到 0.2 个小数位...

public double getPrice () {

   double totalPrice = 0.00;
   DecimalFormat deciFormat = new DecimalFormat("#.00");

...

return Double.valueOf(deciFormat.format(totalPrice));

但是当我在我的 .jsp 中检查结果时,它仍然只有 1 个小数位。任何和所有的见解将不胜感激。

【问题讨论】:

  • 您将数字与它的字符串表示混淆了。如果该方法返回一个双精度值,那么您创建的字符串表示形式与返回的数字的“重要”位几乎没有关系。
  • 以字符串形式返回
  • 将其存储为 BigDecimal 并将其作为字符串返回。
  • 当我将方法的返回类型设为双精度字符串时,现在得到一个 java.lang.NoSuchMethodError :/
  • 通常,该错误意味着您运行的代码与源文件中的代码不同。也许是某个东西的早期版本。确保重建所有内容。

标签: java double getter pojo decimalformat


【解决方案1】:

将方法返回类型更改为字符串。 做了“清理和构建”,String.Format 完成了这项工作!

【讨论】:

  • 请记住,每次您在double 中存入一笔钱,都会有一只小猫死去。
猜你喜欢
  • 2021-03-06
  • 2020-12-29
  • 1970-01-01
  • 2018-03-22
  • 2020-02-16
  • 1970-01-01
  • 1970-01-01
  • 2020-12-27
  • 1970-01-01
相关资源
最近更新 更多