8

在 Java 中,我知道您可以使用 isNull() 方法检查键是否存在。有没有办法检查密钥持有什么样的数据?

考虑以下示例。

我想要一个像 JSONBody.getDataType("key") 这样的函数,它会返回 String

{
    "key" : "value"
}

我想要一个像 JSONBody.getDataType("key") 这样的函数,它会返回 JSONObject

{
    "key" : { 
        "parm1" : "value1",
        "parm2" : "value2"
    }
}

我想要一个像 JSONBody.getDataType("key") 这样的函数,它会返回 JSONArray

{
    "key" : [
        "value1",
        "value2",
        "value3"
    ]
}

我想要一个像 JSONBody.getDataType("key") 这样的函数,它会返回 Boolean

{
    "key" : true
}

这样的事情存在吗?

4

1 回答 1

8
JSONObject stuff = new JSONObject(whatever);
Object thing = stuff.get("key");
String classNameOfThing = thing.getClass().getName();
Systen.out.println("thing is a " + classNameOfThing);
if (thing instanceof Integer) {
    System.out.println("thing is an Integer");
} 
于 2013-04-18T15:49:02.293 回答