【发布时间】:2017-03-12 17:25:33
【问题描述】:
我有这个变量:
Hashmap<Integer,HashMap<Integer,Character>> map;
我有第一个(整数)和第三个元素(字符),我想用函数获取第二个整数。我该如何进行? 我知道如何从普通的 Hashmap 变量中获取值,但我不知道如何使用嵌套的 hashmap...
我已经试过了:
import java.util.*;
public class Test{
public static void main(String[] args){
HashMap<Integer,HashMap<Integer,Character>> map;
map = new HashMap<Integer,HashMap<Integer,Character>>();
map.put(0,new HashMap<Integer,Character>());
map.get(0).put(7,'c');
System.out.println((map.get(0)).get('c'));
}
}
我想打印 7,但这个打印结果为 null。
更新:解决这个问题的最好方法是改变结构。 HashMap 并非旨在从值中获取索引。但是,有一种方法(请看下面)。
【问题讨论】:
-
如果您有一个 character 并希望为其检索 integer 值,为什么不使用
Map<Character, Integer>而不是Map<Integer, Character>? -
非常感谢!我将它更改为 Map
,我终于可以用相同的打印打印值了。