我正在使用org.json.simple.JSONArray
和org.json.simple.JSONObject
。我知道,这两个类JSONArray
和JSONObject
是不相容的,但我仍然希望做的相当自然的事情-我想换了每一个JSONArray
在每个迭代步骤一解析JSONObject
(嵌套内部的JSONArray
)。我尝试这样做:
JSONArray arr = ...; // <-- got by some procedure
for(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和更早版本中所做的事情。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句