Java-将多个贴图添加到2D对象数组中
我对Java非常陌生,请容忍我的技能。 下面的java语句有助于将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 问题: 如果
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;