Универсальный Hashmap - PullRequest
       12

Универсальный Hashmap

0 голосов
/ 17 марта 2012

Я хочу создать хэш-карту, в которой ключ имеет интерфейс A, а значение - интерфейс B. Затем я хочу инициализировать его классами, реализующими A и B. Можно ли сделать это с помощью обобщенных java?

То есть я хочу получить что-то вроде

hashmap<<? implements A>, <? implements B>> _map;
_map.put(a1, b1);

, где a1 реализует A;и b1 реализует B.

Первоначально предполагалось, что я хочу создать фабрику, чтобы я мог посмотреть на a1 и вернуть экземпляр b1.

Ответы [ 3 ]

3 голосов
/ 17 марта 2012
 Map<A, B> map = new HashMap<A, B>();
 map.put(a1, b1);
0 голосов
/ 17 марта 2012

это может быть то, что вы ищете:

HashMap<A,B> map = new HashMap<A,B>();

map.put(a1,b1);
0 голосов
/ 17 марта 2012

Да, возможно, достаточно написать:

Map<A, B> _map = HashMap<A, B>();
...