JSONArray的Java流
我有JSONArray,希望使用stream来迭代它们,任何替代以下传统方法的方法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
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)