Json 数字转换

0.999999999999999945 以上的Json都能转化为1,小于这个的小数都转化为0.

好奇怪的的Jackson 的自动转换。

比如下面的,都会被转化为1.

  • 0.99999999999999995,
  • 0.99999999999999999,
  • 0.999999999999999990000..
{
"count": 0.999999999999999945

}

接收的对象:

public class Book {

    @ApiModelProperty(value = "Book count.", allowableValues = "range[1, 100]")
    private Integer count;

}

实际count 会变成1,好奇怪的转换规则。

下面的会被转化为0

{
"count": 0.999999999999999944

}

并且总长是19位,比如:

2147483646.99999999

就可以转为 2147483647

原文地址:https://www.cnblogs.com/dunkbird/p/14142705.html