当前位置: 首页 > 面试题库 >

代表两个或多个因素之间正向或反向关系的最佳Guava(Google)集合API是什么?

曾弘扬
2023-03-14
问题内容

BiMap确实有逆方法,但我不确定这是解决该问题的正确方法。有人可以建议替代方法或收集/方法吗?一个例子会有所帮助。

提前致谢。普拉卡什


问题答案:

您能否显示一个简单的代码样例,说明如何使用这种数据结构?

键/值应该唯一吗?在这种情况下,BiMap听起来不错。

如果键/值不是唯一的,则需要某种“
BiMultimap”(也称为“图形”),如本Guava讨论主题中所述。Google尚未(尚未?)开源自己的内部BiMultimap。

如果您想要一个图形,则可能需要查看JUNG或Flexigraph,如线程中所述。



 类似资料:
  • 问题内容: 我有一个这样的SQL表: 更新:我正在更改示例表,因为原始数据(州,城市,学校)的现有层次结构性质掩盖了项目之间需要简单关系的事实。 我想在这些实体之间定义双向关系,以便查看一个实体的用户可以看到所有相关实体的列表。 这些关系是由最终用户定义的。 在数据库中表示这些关系并随后查询和更新它们的最佳方法是什么? 我所看到的一种方式… 我的直觉说像这样的关系表: 在这种情况下,假设提供的en

  • 问题内容: 有人可以告诉我反向关系是什么意思吗?我已经开始使用Django,并且在文档的很多地方都看到了“反向关系”。到底是什么意思?为什么有用?它与related_name有什么关系? 问题答案: 这是有关related_name的文档 假设你有2个模型 现在,你可以从配置文件对象执行操作。但是,如果要给配置文件对象指定对象,该怎么做?多数民众赞成在哪里或进来。 Django默认情况下为你提供一

  • 首先,我的英语很差,如果我的写作让人困惑,请原谅。 我试图在实例之间创建以下关系:如果,和,那么。在我的例子中,我想指定如果一个“管理”一名员工,并且与有相同的工作,那么他也管理同一名员工。 我尝试使用链属性来实现这一点,但当我激活它时,推理器(事实1.6.5)不起作用(日志显示使用了一个非简单属性)。我认为问题在于属性“manages”是不对称的和不可伸缩的,而属性“sameJob”是可传递的和

  • 问题内容: 如果我需要通过一个“动作”来更新或插入到多个表中,请调用一个保存信息的示例,其中有多个包含“信息”的表。 出于参数考虑,可以说我们有下表: 姓名地址汽车工作 每次调用保存信息时,都会将其中的每个表插入其中。 哪个更好: 获取必须写入名称表的数据。调用InsertOnSubmit并调用SubmitChanges 获取必须写入地址表的数据。调用InsertOnSubmit并调用Submit

  • 因此,我调用一个服务“ServiceA”,它通过webclient进行外部调用,返回一个mono,然后我想调用另一个服务“serviceB”,它也进行类似的外部调用,这次从“ServiceA”mono传递一些数据,可能还有一些其他外部参数。 目前我有这个实现。 但是我面临线程池的挑战,因为 那么,将这两个单声道结合起来以获得良好性能的最佳策略是什么? 以及在调用内部mono“serviceB”时分

  • 我遇到的情况是,许多键都指向一个值。这种情况源于我正在实现的服务定位器模式- 接口中的每个方法都表示为签名字符串 因此,我需要在用户请求任何匹配键时检索单个值。 从某种意义上说,我需要一个与Guava的MultiMap相反的东西。 我正在寻找最优化的解决方案,因为我的键非常相似,尽管对于特定值是唯一的,我不确定使用像HashMap这样的通用Map实现是否足够有效来处理这种情况。 例如以下所有签名