Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取在另一个映射(JAVA)中使用的映射的键和值_Java_Map_Hashmap - Fatal编程技术网

获取在另一个映射(JAVA)中使用的映射的键和值

获取在另一个映射(JAVA)中使用的映射的键和值,java,map,hashmap,Java,Map,Hashmap,我在另一个映射中使用一个映射,外部映射的键是整数,值是另一个映射。我得到了预期的值,但我不知道如何得到内部映射的键和值。 这是密码 Map<Integer, Map<Integer, Integer>> cellsMap = new HashMap<Integer, Map<Integer, Integer>>(); Map<Integer , Integer> bandForCell = cellsMap.get(band_numbe

我在另一个映射中使用一个映射,外部映射的键是整数,值是另一个映射。我得到了预期的值,但我不知道如何得到内部映射的键和值。 这是密码

Map<Integer, Map<Integer, Integer>> cellsMap = new HashMap<Integer, Map<Integer, Integer>>();
Map<Integer , Integer> bandForCell = cellsMap.get(band_number);
    if (bandForCell == null) 
        bandForCell = new HashMap<Integer, Integer>();
    bandForCell.put(erfcn, cell_found);
    cellsMap.put(band_number, bandForCell);

  csv.writeCells((Map<Integer, Map<Integer, Integer>>) cellsMap);

public void writeCells (Map<Integer, Map<Integer, Integer>> cellsMap ) throws IOException
{
    for (Map.Entry<Integer, Map<Integer, Integer>> entry : cellsMap.entrySet()) {
        System.out.println("Key: " + entry.getKey() + ". Value: " + entry.getValue() + "\n");
    }           
}
上述输出中的值是另一个映射。 如何从外部映射的值中获取内部映射的键和值

像内部映射的键=633163306329。。。。 内部映射的值=0,1,1,0


谢谢

为了获得对内部映射的引用,您只需使用
cellsMap.get(key)
。我不确定您到底想做什么,但是,例如,如果您想获取第一个键是
I
,第二个键是
j
,您可以使用
cellsMap.get(I).get(j)

或者,如果您想在索引
i
处打印出内部映射的所有键和值,您可以使用

for (Map.Entry> entry : cellsMap.get(i).entrySet()) { System.out.println("Key: " + entry.getKey() + ". Value: " + entry.getValue() + "\n"); } for(Map.Entry>Entry:cellsMap.get(i.entrySet()){ System.out.println(“Key:+entry.getKey()+”。Value:+entry.getValue()+“\n”); }
这对我来说很有用,希望将来能帮助别人

 for (Map.Entry<Integer, Map<Integer, Integer>> outer : cellsMap.entrySet()) {
    System.out.println("Key: " + outer.getKey() +  "\n");
    for (Map.Entry<Integer, Integer> inner : entry.getValue().entrySet()) {
        System.out.println("Key = " + inner.getKey() + ", Value = " + inner.getValue());
    }
 }  
for(Map.Entry外部:cellsMap.entrySet()){
System.out.println(“Key:+outer.getKey()+”\n”);
对于(Map.Entry内部:Entry.getValue().entrySet()){
System.out.println(“Key=“+inner.getKey()+”,Value=“+inner.getValue());
}
}  

I是第一个映射的键。为了得到其中一张二级地图,你需要一把钥匙来查找它!如果你能更具体地说明你需要做什么,我可以更好地帮助你:)我需要的是得到外部映射的键,然后外部映射的值和外部映射的值是另一个映射,所以我想得到外部映射的值作为单独的键和内部映射的值。。。希望有帮助
 for (Map.Entry<Integer, Map<Integer, Integer>> outer : cellsMap.entrySet()) {
    System.out.println("Key: " + outer.getKey() +  "\n");
    for (Map.Entry<Integer, Integer> inner : entry.getValue().entrySet()) {
        System.out.println("Key = " + inner.getKey() + ", Value = " + inner.getValue());
    }
 }