Java-将多个贴图添加到2D对象数组中

Java-将多个贴图添加到2D对象数组中,java,arrays,object,hashmap,Java,Arrays,Object,Hashmap,我对Java非常陌生,请容忍我的技能。 下面的java语句有助于将mapOne对象保存在tabArray[0][0]中: Object[][] tabArray = null; Map<String, String> mapOne = readDbConfig(); tabArray = new Object[][] { { mapOne } }; 在上述情况下,地图存储如下: tabArray[0][0]中的mapOne和tabArray[1][0]中的mapTwo 问题: 如果

我对Java非常陌生,请容忍我的技能。 下面的java语句有助于将
mapOne
对象保存在
tabArray[0][0]
中:

Object[][] tabArray = null;
Map<String, String> mapOne = readDbConfig();
tabArray = new Object[][] { { mapOne } };
在上述情况下,地图存储如下:

tabArray[0][0]中的
mapOne
tabArray[1][0]中的
mapTwo

问题:

  • 如果我有100张地图,如何在一条语句中添加它们
  • 更具体地说,如何将贴图对象保存到二维数组的特定索引中

  • 我有以下代码在第4行抛出java.lang.ArrayIndexOutOfBoundsException:

    Map<String, String> dataMap = null;
    dataMap = new HashMap<String, String>();
    dataMap = readDbConfig();
    tabArray[cj][0] = dataMap;
    
    Map dataMap=null;
    dataMap=newhashmap();
    dataMap=readDbConfig();
    tabArray[cj][0]=数据映射;
    
    如果readDbConfig方法“生成”您的新映射,您只需使用一个简单的循环即可

    for (int i = 0; i < 100; i++)
     tabArray[i][0] = readDbConfig();
    
    for(int i=0;i<100;i++)
    tabArray[i][0]=readDbConfig();
    
    或者,如果您有一些内部带有映射的iterable容器,您可以迭代该容器

    for (Map<String, String> el : container) {
     tabArray[i][0] = el;
     i++;
    }
    
    for(地图el:容器){
    tabArray[i][0]=el;
    i++;
    }
    
    我找到了以下解决方案:

    Object[][] tabArray = null;
    int numberOfMaps = 2;
    tabArray = new Object[numberOfMaps][1];//<<< This did the trick
    tabArray[0][0] = dataMapOne;
    tabArray[1][0] = dataMapTwo;
    
    Object[]tabArray=null;
    int numberOfMaps=2;
    
    tabArray=新对象[numberOfMaps][1]//我有下面的代码,它在第4行抛出java.lang.ArrayIndexOutOfBoundsException:“MapDataMap=null;dataMap=newhashmap();dataMap=readDbConfig();tabArray[cj][0]=dataMap;'这意味着您正试图达到数组的外部边界,即:int[]tabArray=newint[10];tabArray[42]=5;数组大小为10,因此您无法访问单元格42。
    Object[][] tabArray = null;
    int numberOfMaps = 2;
    tabArray = new Object[numberOfMaps][1];//<<< This did the trick
    tabArray[0][0] = dataMapOne;
    tabArray[1][0] = dataMapTwo;