我正在尝试弄清楚如何向其中添加一些数据:
Map<String, Queue<Map<Integer, MyObject>>> map1 = new HashMap<String, Queue<Map<Integer, MyObject>>>();
我一直在尝试这样的事情:
map1.put(login, new ArrayBlockingQueue<Map<MyObject>>(500, true);
但我想我完全错了,我希望得到一些提示和进一步的解释。 感谢您的帮助。
最佳答案
您错过了 Map
的 Integer
类型参数。
map1.put(login, new ArrayBlockingQueue<Map<Integer, MyObject>>(500, true));
如果您使用 Java7+,您实际上可以跳过隐式类型参数并依赖 Java 的 type-inference功能,这有助于生成可读的代码:
map1.put(login, new ArrayBlockingQueue<>(500, true));
关于Java访问Queue<Map>中的Map,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28697964/