Quarkus Qute Double,带两位小数

时间:2020-11-03 09:08:46

标签: java quarkus quarkus-qute

标题中全都说了。我想用2个小数转换String中的double。

我尝试了quarkus的例子:

@TemplateExtension(namespace = "str")
class StringExtensions {

   static String format(String fmt, Object... args) {
      return String.format(fmt, args);
   }

   static String reverse(String val) {
      return new StringBuilder(val).reverse().toString();
   }
}

这是我的模板

{str:format('%.2f', total)}

但是它总是导致NOT_FOUND。

唯一的方法是:

    static String formatNumber(Double num) {
        return String.format("%.2f", num);
    }

并更改我的模板:

{total.formatNumber}

有更好的方法吗?我使用quarkus-rest-easy-qute和quarkus-qute扩展名是相同的。

1 个答案:

答案 0 :(得分:1)

对于具有命名空间的扩展方法,如何处理可变参数存在错误。我刚刚创建了一个带有修复程序的 PR:https://github.com/quarkusio/quarkus/pull/14226

一个丑陋的解决方法是在模板中使用额外的“虚拟”参数,例如{str:format('%.2f', total, 1)},并以指定格式忽略此参数。