我对Java比较陌生,我对哪种类型的数据结构最适合我的情况有疑问.我有一组基本上是键值对的数据,但是每个值可以对应于多个键,并且每个键可以对应于多个值.一个简化的例子是:
考虑到上面的例子,我需要能够返回我拥有的颜色苹果和/或我拥有的红色水果.实际数据将基于输入文件动态生成,其中每个集合将是100-100,000个值,并且每个值可以对应于另一个集合中的数百个值.
存储和解析这些数据的最有效方法是什么?我希望尽可能使用java本机的解决方案,而不是像外部数据库那样的东西.
这个问题是相关的,但我不确定如何在我的情况下应用解决方案,因为我需要在两个方向上为每个键分配多个值.