带有JSONArray和JSONObject的Foreach
我正在使用org.json.simple.JSONArray
和org.json.simple.JSONObject
。我知道,这两个类JSONArray
和JSONObject
是不相容的,但我仍然希望做的相当自然的事情-
我想换了每一个JSONArray
在每个迭代步骤一解析JSONObject
(嵌套内部的JSONArray
)。我尝试这样做:
JSONArray arr = ...; // <-- got by some procedurefor(JSONObject o: arr){
parse(o);
}
当我尝试编译此代码时,即使看起来很自然,实际上我也会收到“不兼容的类型”错误。所以,我的问题是迭代的最佳方法是什么JSONArray
?
回答:
显然,org.json.simple.JSONArray
实现了一个 原始
Iterator。这意味着每个元素都被视为Object
。您可以尝试投射:
for(Object o: arr){ if ( o instanceof JSONObject ) {
parse((JSONObject)o);
}
}
这就是在Java 1.4和更早版本中所做的事情。
以上是 带有JSONArray和JSONObject的Foreach 的全部内容, 来源链接: utcz.com/qa/427544.html