我需要实现一个树排版.
Map<String,String> map = new HashMap<String,String>();
String[] nodes = new String[10];
for (int i = 0; i < nodes.length; i++) {
nodes[i] = new String();
}
map.put(nodes[0],nodes[1]);
map.put(nodes[0],nodes[2]);
map.put(nodes[0],nodes[3]);
Iterator iter = map.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
System.out.println("Key="+entry.getKey().getClass()+" Val="+entry.getClass());
}
打印的结果是这样的
Key=class java.lang.String Val=class java.util.HashMap$Entry
我需要的是这样的:
Key=class java.lang.String Val=class java.util.HashMap$Entry
Key=class java.lang.String Val=class java.util.HashMap$Entry
Key=class java.lang.String Val=class java.util.HashMap$Entry
是不是方法用错了.我需要一个对象连接多个对象..如下图形

求指点~非常感谢..
Java map 集合
------解决方案--------------------
可以使用 Google Guava 中提供的 Mutltimap
------解决方案--------------------
map里面保存的同一个key对应的对象是唯一的。
给node加上node[] childs属性不就可以解决了。
看看数据结构里面的树吧,就可以解决了。
------解决方案--------------------
Map<String,String[]> map = new HashMap<String,String[]>();
String[] nodes = new String[10];
for (int i = 0; i < nodes.length; i++) {
nodes[i] = new String();
}
map.put(nodes[0],new String[]{nodes[1],nodes[2],nodes[3]});
------解决方案--------------------
map中的key是唯一的,你应该把nodes[1],nodes[2],nodes[3]放到nodes[0]这个key对应的value中,然后再拆分,输出,就跟3楼的写法一样