在我的表示响应中,我有一个 BigDecimal 类型的字段。它的值是 2.30 但 json 响应将其显示为 2.3 有没有办法也显示尾随零,而不将其显示为字符串?顺便说一句 - 我正在使用杰克逊库。
{
"version" : 2.3 (needs to be 2.30)
}
Run Code Online (Sandbox Code Playgroud)
如果您想让 JSON 保留数字值,则您别无选择,数字不受小数部分中的“0”的影响,因此不会使用它们。仅仅是因为 :
2.3 = 2.30
2.3 = 2.300000
Run Code Online (Sandbox Code Playgroud)
零被简单地忽略。如果你确实需要获得像 2.30 这样的值,你有两种选择,
String保存JSON 中的格式化数字两种解决方案都将使用相同的逻辑:
String.format("%.2f", 2.3); //String: 2.30
Run Code Online (Sandbox Code Playgroud)
区别在于格式化值的那一刻。
由于您有一个“版本”字段,因此我会使用 aString因为版本由以 分隔的数值表示.。请参阅 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>
Run Code Online (Sandbox Code Playgroud)
2.9.4不是一个数字。
| 归档时间: |
|
| 查看次数: |
15103 次 |
| 最近记录: |