【发布时间】:2020-02-04 05:56:18
【问题描述】:
我目前正在学习一些关于流的知识。 我有以下 JSONArray,我希望能够检索所有不同的 xvalue。
datasets: {
ds1: {
xvalues: [
"(empty)",
"x1",
"x2"
]
},
ds2: {
xvalues: [
"(empty)",
"x1",
"x2",
"x3"
]
}
}
我正在尝试以下代码,但它似乎不太正确......
List<String> xvalues = arrayToStream(datasets)
.map(JSONObject.class::cast)
.map(dataset -> {
try {
return dataset.getJSONArray("xvalues");
} catch (JSONException ex) {
}
return;
})
.distinct()
.collect((Collectors.toList()));
private static Stream<Object> arrayToStream(JSONArray array) {
return StreamSupport.stream(array.spliterator(), false);
}
【问题讨论】:
-
哪里看起来不太对劲?你能解释一下吗? (也许有一个示例输入和输出。)
标签: java json java-8 java-stream