首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >哈希集与hashmap的多重关系

哈希集与hashmap的多重关系
EN

Stack Overflow用户
提问于 2018-05-24 03:43:58
回答 1查看 154关注 0票数 0

我对这两个哈希集合的多重关系感到困惑,

从我在另一篇文章中看到的,

HashSet是一个集合,例如{1,2,3,4,5}

HashMap是一个键->值(值的键)映射,例如{a -> 1,b -> 2,c -> 2,d -> 1}

这看起来像哈希集是一个唯一的ID绑定到一组数据,例如。12,3,4,5,这在我看来是一对多的关系

而hashMap是1值的1键,这是一对一的关系。

在谷歌上证实了我的怀疑后,我最终变得更加困惑。在这篇文章中,https://docs.jboss.org/hibernate/orm/3.6/reference/en-US/html/collections.html

它显示了在一对多和多个关系中都使用的哈希集,还有在这两种关系中都使用了hashmap的帖子。

HashSet和HashMap可以同时用于一对多和多对多的关系中吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-24 03:49:59

说到他们的实际使用方式,不!一段关系A->B

然而,当我需要建立“一对多”的关系时,我求助于

代码语言:javascript
运行
复制
 HashMap<A,HashSet<B>>

这样做确实对关系的来源执行了唯一的约束。为了避免这种情况,可以使用HashMap反向映射它。

代码语言:javascript
运行
复制
 HashMap<B,A>

在许多到许多关系中,没有一个唯一的键可以用来访问一对元素。这基本上意味着整个数据集只是一个数据对的列表。

代码语言:javascript
运行
复制
 List<{A,HashSet<B>}> 

其中WrapperObject具有属性标识符HashSet<>。在这里,标识符不一定是唯一的。

如果您正在使用@ManyToMany注释,Spring/Ebean在内部使用它,您不必担心表示映射,因为它在文章中的示例中是可见的。您需要从单个实例的角度设置映射。

整个实例数组将自动为您处理。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50500589

复制
相关文章

相似问题

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