Получение ClassCastException - PullRequest
0 голосов
/ 15 марта 2012

Я типизирую объект в класс bean, что, в свою очередь, дает мне исключение ClassCastException, но я не вижу проблемы, стоящей за этим.приведение типов в EventsBean.

1 Ответ

3 голосов
/ 15 марта 2012

Прежде всего, если вы используете общие коллекции, а не необработанные типы (Map<String, List<EventsBean>> вместо Hashtable), эти ошибки будут обнаружены компилятором.

Забудьте о Vector, Hashtable и Enumeration. Они больше не должны использоваться, начиная с Java 1.2.

И, наконец, почему вы перебираете ключи хеш-таблицы вместо того, чтобы искать значение напрямую?

Вместо

Enumeration events = listEvent.keys();
while (events.hasMoreElements()) {
    String key = (String) events.nextElement();
    if (key.equals(label1.getText())) {
       Vector object = (Vector) listEvent.get(key);

Просто используйте

Vector object = (Vector) listEvent.get(label1.getText());

Теперь, чтобы ответить на ваш вопрос: если вы получаете ClassCastException, это означает, что объекты, хранящиеся в коллекции, не соответствуют вашим ожиданиям. Проверьте код, который заполняет коллекцию. (и переключиться на общие современные коллекции)

...