在我的表示响应中,我有一个 BigDecimal 类型的字段。
它的值为 2.30,但 json 响应将其显示为 2.3
有没有办法同时显示尾随零,而不将其显示为字符串?
顺便说一句 - 我正在使用杰克逊库。
{
"version" : 2.3 (needs to be 2.30)
}
如果您想让 JSON 保留数字值,则您别无选择,数字不受小数部分中的“0”的影响,因此不会使用它们。仅仅是因为 :
2.3 = 2.30
2.3 = 2.300000
零被简单地忽略。如果你确实需要获得像 2.30 这样的值,你有两种选择,
- use a
String
持有格式化的JSON 中的数字
- 在客户端格式化该值。
两种解决方案都将使用相同的逻辑:
String.format("%.2f", 2.3); //String: 2.30
区别在于格式化值的那一刻。
Note:
由于您有一个“版本”字段,我会使用String
因为版本是由数字值表示的,由.
。请参阅 Jackson 的 Maven 仓库:
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.4</version>
</dependency>
2.9.4不是一个数字。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)