java - Java:多键/值映射
问题描述
我想要一个类似于 Map 但具有多个键和多个值的 Java 集合。
样本:
假设我们有 3 个键和一个元素的 3 个值。
set (key ("G", "Merc", "SUV"), val ("silver", "400", "100.000"));
val v = get (key ("A4", "Audi", "Sedan"))
某些图书馆中是否存在这样的集合?
解决方案
最简单的方法,也是我推荐的方法,是简单地创建 2 个 java 类,一个是键,另一个是值。
class Key {
String str1, str2, str3;
}
class Value {
String str1, str2, str3;
}
// later on
Map<Key, Value> map = ...;
map.put(new Key("G", "Merc", "SUV"), new Value("Silver", "400", "100.000"));
map.get(new Key("A4", "Audi", "Sedan"));
当然,这不是唯一的方法,但它是最容易维护的,也最容易在以后修改,如果你想为你的键添加另一个属性。
其他方式包括String[]
用作键和值,List<String>
和/或Set<String>
。您甚至可以推出自己的Map<T>
.