我调用外部一个函数,返回一个hashmap的返回值,然后我通过遍历,得到下面的结果
productid=100001
services=[null,
           [null,
             {key1=null,key2=null,key3=3,key4=[null,
                                                [null,
                                                  {key5=null,key6=null}
                                                ]
                                              ],
              key7=1}
           ]
         ] 
productstatus=1我的问题是,如果让我自己定义这个哈希变量,变量定义应该是什么样子呢?会不会很复杂????
谢谢!!!

解决方案 »

  1.   

    如果我定义一个变量hmHashMap hm = new HashMap();hm.put("productid","100001");
    hm,put("services",????);
    hm.put("productstatus","1");
    services这里应该怎么放?谢谢
      

  2.   

    HashMap里保存的是一个KEY-VALUE对的形式,其中KEY值和VALUE值都可以放任意类型的对象。
    所以,你在用的时候可以根据需要吧service中的数据整理后放进去,或者干脆吧service对象本身放进去。
      

  3.   

    HashMap 镜像,通过key镜像value
    hm.put(null,map1);
    map1=[null, 
                {key1=null,key2=null,key3=3,key4=[null, 
                                                    [null, 
                                                      {key5=null,key6=null} 
                                                    ] 
                                                  ], 
                  key7=1} 
              ] 
     
    以此类推
      

  4.   

    HashMap的put方法是设置参数的   使用键值对的关系  key -value   例如: map.put("name","csdn");
    这个样子
    如果你需要便利HashMap
    可以用map.keySet()方法  这个方法是把所有的key取出来
    然后放到Set 集合里面
    通过set集合里面的Iterator iter来取出键  然后用map.get(key)依次取出值
      

  5.   

    一步一步逆推好了
    services=[null,
              [null,
                {key1=null,key2=null,key3=3,key4=[null,
                                                    [null,
                                                      {key5=null,key6=null}=a
                                                    ]
                                                  ],
                  key7=1}
              ]
            ] services=[null,
              [null,
                {key1=null,key2=null,key3=3,key4=[null,
                                                    [null,a]=b
                                                  ],
                  key7=1}
              ]
            ] services=[null,
              [null,
                {key1=null,key2=null,key3=3,key4=[null,b],key7=1}=c
              ]
            ]services=[null,
              [null,c]=d
            ]services=[null,d]
    也就是
            HashMap a = new HashMap();
            a.put("key5", null);
            a.put("key6", null);
            Object[] b = new Object[]{null,a};
            HashMap c = new HashMap();
            c.put("key1", null);
            c.put("key2", null);
            c.put("key3", "3");
            c.put("key4", new Object[]{null,b});
            c.put("key7", null);
            Object[] services=new Object[]{null,new Object[]{null,c}};
      

  6.   

    这样做写一个类,这个类有两个成员变量
    private Object key
    private Map hashMap = new HashMap();这样就可以级联的去放对象了。