繁体   English   中英

如何从字符串列表中获取jsonarray

[英]How to get an jsonarray from a list of strings

我最近遇到了编码挑战,并且真正地被困在如何从字符串列表中获取值作为JSONArray。

假设给定一个类别列表,您希望将学生的姓名存储在JSONArray中。

一年级
汤姆

埃德
水晶

二年级
菲比
辛迪
吉尔
马特

三年级
水晶

掠夺
狮子座

// To access all the lists in the collection
List<String> classes = new ArrayList<String>(jsonInput.keySet());

之后,我是否遍历类以获取名称并将其放入JSONArray?

在代码下面添加依赖项

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.8.5</version>
</dependency>

并在地图中添加列表,然后将其转换为JSON字符串。

Map<String, List<String>> map=new HashMap<>();
map.put("First Grade", list1);
map.put("Second Grade", list2);
map.put("Third Grade", list3);
ObjectMapper mapper = new ObjectMapper();
try {
    String json = mapper.writeValueAsString(map);
    System.out.println(json);
} catch (JsonProcessingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

如果要从ArrayList<String>转到JSONArray则可以使用GSON

ArrayList<String> listOfStudentNames = new ArrayList<String>;
listOfStudentNames.add("Tom");
listOfStudentNames.add("Cat");
listOfStudentNames.add("Ed");
...
Gson gson = new Gson();
String data = gson.toJson(listOfStudentNames);
JsonArray jsonArray = new JsonParser().parse(data).getAsJsonArray();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM