我正在使用 openjdk 11,我正在調(diào)用一個返回內(nèi)容類型 json 的 api。我解析響應(yīng)并轉(zhuǎn)換成這樣的字符串(需要這樣做,因為我期待不同格式/結(jié)構(gòu)的響應(yīng)): 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類型的對象。轉(zhuǎn)換為字符串后,響應(yīng)如下所示:["abc","bcd","cde"]現(xiàn)在,我試圖將其放入 jsonObject 或 JsonArray 中 JSONArray jsonArray = new JSONArray(responseBody); Arrays.asList(jsonArray).stream().forEach(e-> LOG.info("Connector: " + e));雖然我的jsonArray看起來不錯,但出現(xiàn)如下錯誤:["abc","bcd","cde"] is not an array問題是:如何將該 jsonArray 轉(zhuǎn)換為 Java 中的列表 ?
1 回答

MMMHUHU
TA貢獻(xiàn)1834條經(jīng)驗 獲得超8個贊
我假設(shè) 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
提交
取消