作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的表示响应中,我有一个 BigDecimal 类型的字段。它的值为 2.30,但 json 响应将其显示为 2.3有没有办法同时显示尾随零,而不将其显示为字符串?顺便说一句 - 我正在使用 jackson 库。
{
"version" : 2.3 (needs to be 2.30)
}
最佳答案
如果您想让 JSON 保留数字值,您别无选择,数字不受小数部分中的“0”的影响,因此不会使用它们。很简单,因为:
2.3 = 2.30
2.3 = 2.300000
零被简单地忽略。如果您确实需要获得像 2.30 这样的值,您有两种选择,
字符串
来保存JSON中的格式化数字两种解决方案都将使用相同的逻辑:
String.format("%.2f", 2.3); //String: 2.30
差异在于您设置值格式的那一刻。
由于您有一个“版本”字段,因此我将使用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 不是一个数字。
关于java - 如何在 JSON 中显示带有尾随零的 BigDecimal 数字(而不是字符串)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48662635/
我是一名优秀的程序员,十分优秀!