您可以使用Guava Multimap,該集合代表您需要的東西。 http://code.google.com/p/guava-libraries/
例子:
public static void main(final String[] args) throws Exception {
final Multimap<String, Entry<String, String>> multimap = HashMultimap.create();
multimap.put("asdfasdf", new NodeEntry(null, "value"));
multimap.put("asdf", new NodeEntry("2234", "asdfsdf"));
multimap.put("asdf", new NodeEntry("223422", "qasdfljk"));
System.out.println(multimap);
}
class NodeEntry implements Entry<String, String> {
private final String key;
private final String value;
public NodeEntry(final String key, final String value) {
this.key = key;
this.value = value;
}
@Override
public String getKey() {
return key;
}
@Override
public String getValue() {
return value;
}
@Override
public String setValue(final String value) {
throw new UnsupportedOperationException();
}
@Override
public String toString() {
final StringBuilder builder = new StringBuilder();
builder.append("NodeEntry [key=").append(key).append(", value=").append(value).append("]");
return builder.toString();
}
}
你能幫助一些代碼嗎?這是一個令人困惑的結構:)我想要一個鍵/值對,值是一個列表。哦,當我寫這篇文章時,我好像看到了多圖的功能。 – Blankman
等待,關鍵是一個字符串,並且該值是一個List,那麼在java中該如何工作? (我是一個C#人) –
Blankman
我添加了一個例子。有一個使用自定義節點類的以前的答案。我會說,根據你的需要,你應該選擇其他的。例如:如果您要主要查找/搜索/等。 Map解決方案可能更易於使用。 –