gpt4 book ai didi

java - 如何在 Java 中使用 StringTemplate (ST) 格式化十进制数字?

转载 作者:行者123 更新时间:2023-12-02 08:48:39 25 4
gpt4 key购买 nike

我正在 Java 中使用 StringTemplate。

我想以一定的精度渲染十进制数(例如小数点后 3 位数字)。

ST 对象可以做到这一点吗?如何?

编辑:需要澄清的是,这在渲染对象时尤其重要。例如。我的代码看起来像

String renderMe(String template, Collection<MyClass> items)
{
// render the items here using the template....
}

renderMe() 不必知道有关 MyClass 字段的任何信息,特别是它不必知道哪些字段是浮点。我正在寻找一种维持这种解耦的解决方案。

最佳答案

为 Number 子类注册内置 NumberRenderer,然后使用格式选项:

String template =
"foo(x,y) ::= << <x; format=\"%,d\"> <y; format=\"%,2.3f\"> >>\n";
STGroup g = new STGroupString(template);
g.registerRenderer(Number.class, new NumberRenderer());

关于java - 如何在 Java 中使用 StringTemplate (ST) 格式化十进制数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6610721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com