我需要实现一个树排版.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是不是方法用错了.我需要一个对象连接多个对象..如下图形求指点~非常感谢..
Javamap集合

解决方案 »

  1.   

    可以使用  Google Guava 中提供的 Mutltimap
      

  2.   

    map里面保存的同一个key对应的对象是唯一的。给node加上node[] childs属性不就可以解决了。
    看看数据结构里面的树吧,就可以解决了。
      

  3.   


    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]});
      

  4.   

    map中的key是唯一的,你应该把nodes[1],nodes[2],nodes[3]放到nodes[0]这个key对应的value中,然后再拆分,输出,就跟3楼的写法一样