我对 Java 8 lambdas 和其他东西很陌生……我想编写一个 lambda 函数,它接受 a JSONArray,遍历它的JSONObjects 并创建某个字段的值列表。
例如,一个函数接受JSONArray:[{name: "John"}, {name: "David"}]并返回一个列表["John", "David"]。
我写了以下代码:
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
public class Main {
public static void main(String[] args) {
JSONArray jsonArray = new JSONArray();
jsonArray.add(new JSONObject().put("name", "John"));
jsonArray.add(new JSONObject().put("name", "David"));
List list = (List) jsonArray.stream().map(json -> json.toString()).collect(Collectors.toList());
System.out.println(list);
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我收到一个错误:
线程“main”中的异常 java.lang.NullPointerException
你知道如何解决吗?