JSONArray的Java流

JSONArray的Java流,java,json,java-8,java-stream,Java,Json,Java 8,Java Stream,我有JSONArray,希望使用stream来迭代它们,任何替代以下传统方法的方法 for (int i = 0; i < jsonArray.length(); i++) { methodCall(jsonArray.getJSONObject(i)); } for(int i=0;i

我有JSONArray,希望使用stream来迭代它们,任何替代以下传统方法的方法

for (int i = 0; i < jsonArray.length(); i++) {
    methodCall(jsonArray.getJSONObject(i));
 }
for(int i=0;i
您需要更改以下两个步骤:

  • jsonArray.getJSONObject(i)
    您需要此操作的结果,因此请使用
    map()
    操作
  • methodCall()
    这是一个终端操作(不需要结果),所以使用
    forEach()
    操作

为什么要重写,您是如何尝试的?对于(Object o:arr){if(o instanceof JSONObject){parse((JSONObject)o);}}这是我尝试过的一种方法,但使用spilitator我们可以,但它正在收集对象。
IntStream.range(0,jsonArray.length()).mapToObj(jsonArray::getJSONObject)
谢谢大家,我遵循这个方法。
IntStream.range(0, jsonArray.length()).mapToObj(jsonArray::getJSONObject)
                                      .forEach(Myclass:methodCall)