我的 Java 程序将 JSON 字符串作为参数并对其进行解析。我正在使用 json-simple 解析器。这是它的链接。我正在尝试将以下 JSON 字符串作为参数传递给程序。
{
"obj":"timeout" ,
"valInMs":15000
}
我正在尝试获取 "valInMs" 的值。以下是执行此操作的 java 代码
JSONParser parser = new JSONParser();
JSONObject jsonObj;
jsonObj = (JSONObject) parser.parse(jsonString);
Integer timeout = (Integer) paramJson.get("valInMs");
上面的代码引发java.lang.ClassCastException
:java.lang.Long
不能强制转换为java.lang.Integer
.
我试图了解程序在遇到 JSON 数字值时应该期待什么。无法通过查看 JSON 对象来确定“类型”。
java程序应该如何处理这个?
形成json.org似乎 Json “值”(在许多其他的东西中)可以是 “数字”。“数字”可以是以下之一:
number
- int
- int frac
- int exp
- int frac exp