Java访问队列中的映射<;地图>;

Java访问队列中的映射<;地图>;,java,object,dictionary,queue,Java,Object,Dictionary,Queue,我正试图找出如何向其中添加一些数据: Map<String, Queue<Map<Integer, MyObject>>> map1 = new HashMap<String, Queue<Map<Integer, MyObject>>>(); Map map1=newhashmap(); 我一直在尝试这样的事情: map1.put(login, new ArrayBlockingQueue<Map<MyOb

我正试图找出如何向其中添加一些数据:

Map<String, Queue<Map<Integer, MyObject>>> map1 = new HashMap<String, Queue<Map<Integer, MyObject>>>();
Map map1=newhashmap();
我一直在尝试这样的事情:

map1.put(login, new ArrayBlockingQueue<Map<MyObject>>(500, true);
map1.put(登录,新建ArrayBlockingQueue(500,true);
但我想我完全错了,我希望得到一些提示和进一步的解释。
谢谢您的帮助。

您错过了
映射的
整数
类型参数

map1.put(login, new ArrayBlockingQueue<Map<Integer, MyObject>>(500, true));
map1.put(登录,新建ArrayBlockingQueue(500,true));
如果您使用的是Java7+,实际上可以跳过隐式类型参数并依赖Java的功能,这有助于生成可读代码:

map1.put(login, new ArrayBlockingQueue<>(500, true));
map1.put(登录,新建ArrayBlockingQueue(500,true));

您错过了
映射
整数
类型参数

map1.put(login, new ArrayBlockingQueue<Map<Integer, MyObject>>(500, true));
map1.put(登录,新建ArrayBlockingQueue(500,true));
如果您使用的是Java7+,实际上可以跳过隐式类型参数并依赖Java的功能,这有助于生成可读代码:

map1.put(login, new ArrayBlockingQueue<>(500, true));
map1.put(登录,新建ArrayBlockingQueue(500,true));
尝试以下方法:

map1.put(login, new ArrayBlockingQueue<Map<Integer, MyObject>>(500, true));
                                           ^^^^^^^                       ^(missing closing bracket)
Map<Integer, MyObject> myMap = ...;
myMap.put(1, new MyObject...);
map1.get(login).add(myMap);//or can use offer
map1.put(登录,新建ArrayBlockingQueue(500,true));
^^^^^^^^(缺少右括号)
查看映射中缺少整数类型。如果希望向队列添加值,则可以执行以下操作:

map1.put(login, new ArrayBlockingQueue<Map<Integer, MyObject>>(500, true));
                                           ^^^^^^^                       ^(missing closing bracket)
Map<Integer, MyObject> myMap = ...;
myMap.put(1, new MyObject...);
map1.get(login).add(myMap);//or can use offer
Map myMap=。。。;
myMap.put(1,新的MyObject…);
map1.get(login).add(myMap);//或可以使用offer
尝试以下方法:

map1.put(login, new ArrayBlockingQueue<Map<Integer, MyObject>>(500, true));
                                           ^^^^^^^                       ^(missing closing bracket)
Map<Integer, MyObject> myMap = ...;
myMap.put(1, new MyObject...);
map1.get(login).add(myMap);//or can use offer
map1.put(登录,新建ArrayBlockingQueue(500,true));
^^^^^^^^(缺少右括号)
查看映射中缺少整数类型。如果希望向队列添加值,则可以执行以下操作:

map1.put(login, new ArrayBlockingQueue<Map<Integer, MyObject>>(500, true));
                                           ^^^^^^^                       ^(missing closing bracket)
Map<Integer, MyObject> myMap = ...;
myMap.put(1, new MyObject...);
map1.get(login).add(myMap);//or can use offer
Map myMap=。。。;
myMap.put(1,新的MyObject…);
map1.get(login).add(myMap);//或可以使用offer