如何搭配课程

时间:2019-01-23 20:26:41

标签: java

我正在使用org.json.simple.JSONObject将字符串json转换为JSONObject。

我想从中获取值时检查类型或类。像这样:

JSONParser parser = new JSONParser();
JSONObject data = (JSONObject) parser.parse(new FileReader(resourceFile.getFile()));
JSONObject target = (JSONObject) data.get("target");
if(data.get("target") instanceof JSONArray.class) //not working
...
if(data.get("target").getClass().equals(JSONArray.class)) //not working
if(data.get("target").getClass() == JSONArray.class) //not working
...



if(data.get("target").getClass().equals("org.json.simple.JSONArray")) //this works.

还有其他方法可以检查和比较课程吗?

2 个答案:

答案 0 :(得分:1)

这对我有用:

data.get("target").getClass().getName().equals(JSONArray.class.getName())

答案 1 :(得分:1)

https://chocolatey.org/install

也为我工作。

再三考虑,可能是因为if(data.get("target") instanceof JSONArray) 是从另一个库中导入的吗?也许JSONArray是从JSONArray (org.json)导入的,而org.json.JSONArray是从JSONObject (org.json.simple)导入的?

我从只有真正指定的类路径(org.json.simple.JSONObject)为您工作的事实中获得了领先优势。