Map m = new HashMap();
由于需实例化的hashmap是动态变化的,希望可以自动实例化为如m1,m2,。。等,有什么办法么?
Map m+i = new HashMap(); 显然不行啊,请教?map实例化hashmap

解决方案 »

  1.   

    不太理解你所谓“实例化是动态变化的”,能不能具体点,比如说个业务 ?
    但,
    如果只是分配新的事例,到可以如下去做:
    List<HashMap> list = null ;//存值
    if( mustHaveNewMap ){
      if( null == list )
         list = new ArrayList<HashMap>();
      list.add(new HashMap()); 
    }
    //取值
    int index = list.size() - 1 ;
    for(int i = index ; i <0 ; i--){
      HashMap map = list.get(i);
    }
      

  2.   

    实例化n个hashmap,从1到n  依次命名为m1,m2.。。  然后可以根据n对hashmap依次进行操作!!
    很难理解么?
    原代码:
    Map m1 = new HashMap();
    Map m2 = new HashMap();
    m1.put("yiyue", 100);
    m1.put("eryue", 200);
    m1.put("sanyue", 300);
    m2.put("yiyue", 200);
    m2.put("eryue", 300);
    m2.put("sanyue", 400);Map all = new HashMap();
    all.put(1, m);
    all.put(2, m2);现在所有数据要从数据库读出,不知道有几个haspmap集合。所以想能不能用个for
    循环。根据获取数量来等量实例化hashmap。  
      

  3.   

    2楼用list不是很好么,为什么执著于变量名
      

  4.   

    楼主学过数组么?
    Map [] m = new m[n];
    for (int i = 0; i < n; i++)
      m[i] = new HashMap ();
    先学好了基础,这种问题迎刃而解。你问的问题太简单,大家都不相信你居然会问这个问题,所以有些同学没看懂你问什么
      

  5.   

    先随便找本Java基础的书从头到尾看一遍,没必要急着去搞懂书上的每一句话,也没必要急着去举一反三。看第二遍的时候再想这些问题吧