输入json字符串:“{”predicted_route:[1351,371,372,373,0]}”,该字符串在对后端服务器进行post请求调用后收到。我想将列表从json字符串提取到arraylist中。我还没有在网上找到任何能说明这一点的东西?如果我能使用org.json,那将是最好的。谢谢
vof42yt11#
import org.json.*; String jsonString = inputJsonString; //assign your JSON String here JSONObject jsonObject = new JSONObject(jsonString); JSONArray jsonArray = jsonObject.getJSONArray("predicted_route"); ArrayList<String> arrayList = new ArrayList<String>(); if (jsonArray != null) { for (int i = 0; i < jsonArray.length(); i++) { arrayList.add(jsonArray.getString(i)); } }
java中解析json的更多示例可下载jar:http://mvnrepository.com/artifact/org.json/json
gkl3eglg2#
包括jackson依赖项,这样您就可以反序列化json,而无需手动解析它
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.12.4</version> </dependency>
创建对象的pojo表示。拥有 predicted_route Map到可以对其进行注解的正确字段 @JsonProperty .
predicted_route
@JsonProperty
class Route { @JsonProperty("predicted_route") private List<Integer> predictedRoute; public List<Integer> getPredictedRoute(){ return predictedRoute; } public void setPlannedRoute(List<Integer> route){ this.plannedRoute = route; } }
将json字符串Map到您的对象
String yourJson = "{\\"predicted_route\\": [1, 351, 371, 372, 373, 0]}"; Route myRoute = new ObjectMapper().readValue(yourJson, Route.class); System.out.println(myRoute.getPredictedRoute());
2条答案
按热度按时间vof42yt11#
java中解析json的更多示例
可下载jar:http://mvnrepository.com/artifact/org.json/json
gkl3eglg2#
包括jackson依赖项,这样您就可以反序列化json,而无需手动解析它
创建对象的pojo表示。拥有
predicted_route
Map到可以对其进行注解的正确字段@JsonProperty
.将json字符串Map到您的对象