Исключение Класса - PullRequest
       9

Исключение Класса

0 голосов
/ 19 марта 2010

почему я получаю это исключение?

Map myHash = null myHash = (HashMap) Collections.synchronizedMap (новый HashMap ());

Если я пытаюсь использовать эту хэш-карту, я получаю java.lang.ClassCastException

Ответы [ 2 ]

1 голос
/ 19 марта 2010

Поскольку Collections.synchronizedMap () не возвращает HashMap.

Правильный путь должен быть:

Map mySyncedMap = Collections.synchronizedMap (new HashMap ());

(или любая другая карта вместо HashMap)

0 голосов
/ 19 марта 2010

Потому что Collections.synchronizedMap не возвращает HashMap.

Возвращает какой-то другой тип Map (тип, который вам не нужно знать), который окутывает ваше HashMap.

Вы должны использовать интерфейс Map вместо HashMap.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...