json.getLong()产生不一致的结果

时间:2017-04-27 17:57:55

标签: java json long-integer

Json.getLong产生不一致的结果。下面是以下示例代码段,它使用相同的JDK版本和相同的JSON jar在不同的机器上生成不同的结果

public class JsonTestProgram {

    public static void main(String[] args) {

        String str = "26315000000253009";
        JSONObject json = new JSONObject();
        json.put("key", str);

        System.out.println("The value of json.get is  : " +json.get("key"));
        System.out.println("The value of json.getLong is : "+json.getLong("key"));
        System.out.println("The value of json.getString is : "+json.getString("key"));
        }
}

不同的结果

  

json.get的值为:26315000000253009

     

json.getLong的值为:26315000000253008

     

json.getString的值为:26315000000253009

在另一台机器上,结果就像,

  

json.get的值为:26315000000253009

     

json.getLong的值是:26315000000253009

     

json.getString的值为:26315000000253009

这种不一致的结果可能是什么原因?如果有人能帮助我了解这一点,那将会很有帮助。

0 个答案:

没有答案