【发布时间】:2015-04-22 03:17:55
【问题描述】:
好的,我查找了一些关于我的问题的线程,但在他们使用的每个解决方案中(至少在大多数情况下)都类似于:
Map<Key, ArrayList<Value>> myMap = new HashMap...;
//this Map is an attribute of my first Object so the Key is the second
Object and my ArrayList is the relation
输入如:String1 (nr=2) relation String2
所以在我的情况下,我将获得一些名称和数字来创建一个对象(已经完成)。之间的关系字符串告诉我这些对象应该是什么关系,但也可能有Object of String1 与String2 Object 相关,但也与另一个String3 Object 相关。所以我现在的问题是,如果我从文件中读取输入,它将覆盖第一个关系。
但是如果我使用 ArrayList 的方法,我必须知道存在哪个关系。因为在我的输入文件中会有类似:
String1 relation String2
String3 relation String5
String1 relation String4
所以我也不能只添加关系和地图中的第二个对象。
希望你能理解我的问题。 (非母语人士)
提前致谢
【问题讨论】:
-
听起来你可能需要一个 Map
来跟踪关系。即字符串键到字符串值的映射 -
听起来您想要一个
Map<String, List<RelationAndValue>>,其中RelationAndValue是您创建的用于保存关系和值的类。 -
你也可以试试 Map
>。其中第一个字符串是 STRING1,第二个是 RELATION,第三个是 STRING2。如果您有比 Map 更多具有相同关系的字符串>>.
标签: java object dictionary hashmap