我正在使用 openjdk 11,我正在调用一个返回内容类型 json 的 api。我解析响应并转换成这样的字符串(需要这样做,因为我期待不同格式/结构的响应): HttpEntity entity = response.getEntity(); try { responseBody = EntityUtils.toString( entity ); } catch ( Exception e ) { LOG.error( "Unable to parse response", e ); e.printStackTrace(); }其中 response 是一个org.apache.http.HttpResponse类型的对象。转换为字符串后,响应如下所示:["abc","bcd","cde"]现在,我试图将其放入 jsonObject 或 JsonArray 中 JSONArray jsonArray = new JSONArray(responseBody); Arrays.asList(jsonArray).stream().forEach(e-> LOG.info("Connector: " + e));虽然我的jsonArray看起来不错,但出现如下错误:["abc","bcd","cde"] is not an array问题是:如何将该 jsonArray 转换为 Java 中的列表 ?
1 回答
MMMHUHU
TA贡献1834条经验 获得超8个赞
我假设 JSONArray 来自 Android。你可以这样做:
ArrayList<String> list = new ArrayList<String>();
JSONArray jsonArray = (JSONArray)jsonObject;
if (jsonArray != null) {
int len = jsonArray.length();
for (int i=0;i<len;i++){
list.add(jsonArray.get(i).toString());
}
}
添加回答
举报
0/150
提交
取消