【发布时间】:2017-08-04 05:12:51
【问题描述】:
如何在 FreeMarker 中将数据制成表格,同时保持精度和not losing cents due to double of float reprensations?
<#assign totalSalaries = 0>
<#list employees as employee>
<#assign totalSalaries = totalSalaries + emplpoyee.salary>
</#list>
${totalSalaries?string.currency}
就个人而言,我更喜欢使用多头并将所有内容都以美分表示,但我找不到将其转换为货币价值的简单解决方案。无论哪种方式,如果我使用 long 或 BigDecimal(很容易将 long 与 cents 转换为 BigDecimal),我如何保证打印出来的总工资不会因为 doubles 或 floats 的精度错误而损失任何美分?换句话说,FreeMarker 是如何决定将 total 定义为什么类型的变量?
【问题讨论】:
标签: java freemarker