gpt4 book ai didi

java - 处理存储为 HashMap 的 Json,其中多个元素存储在值中

转载 作者:行者123 更新时间:2023-12-02 10:20:57 28 4
gpt4 key购买 nike

我有一个包含多个对象的 json 文档。我已设法将其打印为 map ,但我希望能够访问值中的元素。

我可以打印 map ,但希望能够打印键内的特定元素

for (Map.Entry<String,Object> entry : myMap.entrySet()) {
System.out.println("Key: "+entry.getKey() + " Value: "+entry.getValue());
}

输出如下:

Key: header1 Value: {id=123456, contents=[cat,dog,hamster]}
Key: header2 Value: {id=234567, contents=[spoon,knife,fork]}

我希望能够循环并在每次迭代时将 id 分配给字符串并将内容分配给列表

最佳答案

最简单的解决方案是创建一个代表 JSON 的类。对于你来说,它会是这样的:

public class Contents {
private int id;
private List<String> contents;

//No arguments constructor, getters and setters for every field
//You can make with @JsonCreator, too. Read Jackson documentation
};

然后你只需使用 Jackson 的 ObjectMapper 将其作为对象读取:

ObjectMapper mapper = new ObjectMapper();
Contents result = mapper.readValue(entry.getValue(), Contents.class);

之后,您可以对该对象执行任何您喜欢的操作。稍后,您甚至可以将其写入文件/流等。

关于java - 处理存储为 HashMap 的 Json,其中多个元素存储在值中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54343492/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com