首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在这种情况下使用什么Java集合?

在这种情况下使用什么Java集合?
EN

Stack Overflow用户
提问于 2015-07-16 21:40:49
回答 2查看 66关注 0票数 0

我是Java新手,我正试图找出哪些Java集合可以将我从JSON获得的值扁平化为Java集合,但不知道要使用哪个集合。以下是我从JSON获得的信息:

用户: Tim产品:啤酒

用户: Tim产品:面包

用户: Tim产品:牛奶

用户: Tim产品: Soap

用户: Michael产品: Soap

用户:迈克尔产品:咖啡

用户: Michael产品:汽车

用户:韦恩产品:面包

用户:韦恩产品:肥皂

如你所见,我的用户有以下产品:提姆:啤酒,面包,牛奶,肥皂迈克尔:肥皂,咖啡,汽车韦恩:面包,肥皂

什么是最好的集合用来存储这些,这样我就可以确定所有的产品持有一个用户?

例如,通过提供Key=Michael,我将得到Soap、Coffee和Car。

非常感谢,

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-16 21:46:41

取决于你对数据的使用。看上去地图是个不错的选择。

票数 1
EN

Stack Overflow用户

发布于 2015-07-16 21:48:20

我会使用Multimap,因为一个人可能有多个产品。

您可以在以下站点找到一个非常简单的示例:http://www.leveluplunch.com/java/examples/guava-multimap-example/

所以你可能最终会有这样的结果:

代码语言:javascript
复制
Multimap<String,String> myMap = new Multimap<>();
myMap.put("Tim", "Beer");
myMap.put("Tim", "Bread");
myMap.put("Tim", "Milk");

然后看看什么产品与Tim相关:

代码语言:javascript
复制
List<String> products = myMap.get("Tim");
for(String product: products){
    System.out.println(product);
} 

这个会打印出来

代码语言:javascript
复制
Beer
Bread
Milk
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31465016

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档