我是编程新手,如果这是一个愚蠢的问题,我很抱歉。我想知道是否有一种数据类型(可能)返回每个键不止一个答案。例如:
TestType<int,String> test = new TestType<int,String>();
因此,如果您输入 test.getKey(1),您可以获得 {"hello","this","is","a","test"}。
基本上,有没有一种数据可以返回多个答案,有点像 HashMap 和 List 的组合?
最佳答案
不在标准 Java 中。但是,您可以使用 Guava MultiMap集合类型。还有其他图书馆也提供多 map 集合。
如果出于某种原因您不想使用第三方库,您也可以使用自己的数据结构。但是,这绝对是在重新发明轮子,而且有点痛苦。您将定义 test
成为Map<Integer, Set<String>>
然后编写访问方法以在适当的条件下用空集初始化 key 条目。
请注意,Java 不允许将原始类型(例如,您正在使用的 int
)用作泛型类型参数值。你必须使用 Integer
.由于自动装箱,您仍然可以使用 test.get(1)
检索存储在键 1
下的值.
关于java - 产生多个结果的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9862294/