【发布时间】:2021-05-16 09:33:52
【问题描述】:
我正在调用一个端点,我得到的请求正文如下所示。
{"page":6,"name":"Fly","myList":["123","657","983","112"]}
所以我正在创建一个 org.json.JSONObject,例如 JSONObject repsonseObj = new JSONObject(repsonse.getBody());
我现在可以做
(int)repsonseObj.get("page");
(String)repsonseObj.get("name");
我试图将 "myList" 转换为 Java ArrayList of String。 我可以使用 JSONArray 对象将其拉出并使用 for 循环来填充 ArrayList 的实例。 还尝试使用 ObjectMapper for jackson.databind 进行类似下面的操作
myListVar = mapper.readValue((String)repsonse.getString("myList"), new TypeReference<ArrayList<String>>(){});
//That gives an error saying "myList" is not a string. Surely I am missing something here.
我想保持数字的顺序。 有没有更优雅的解决方案?我尝试查看 java.lang 中的 StringUtils、ArrayUtils。我似乎无法找到更好的解决方案。有人能指出我正确的方向吗,谢谢。
【问题讨论】:
-
我认为这个
Is there a more elegant solution for this?问题是基于意见的。
标签: java json spring arraylist httpresponse