gpt4 book ai didi

java - 如何在 JSON 中显示带有尾随零的 BigDecimal 数字(而不是字符串)?

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

在我的表示响应中,我有一个 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 这样的值,您有两种选择,

  1. 使用字符串来保存JSON中的格式化数字
  2. 在客户端格式化该值。

两种解决方案都将使用相同的逻辑:

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/

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