带有JSONArray和JSONObject的Foreach

我正在使用org.json.simple.JSONArrayorg.json.simple.JSONObject。我知道,这两个类JSONArrayJSONObject是不相容的,但我仍然希望做的相当自然的事情-

我想换了每一个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和更早版本中所做的事情。

以上是 带有JSONArray和JSONObject的Foreach 的全部内容, 来源链接: utcz.com/qa/427544.html

回到顶部