ArrayList выбрасывает исключение java.lang.ClassCastException

У меня есть этот код

   List<Item> listOfItems = itemsPlanning.get(editText.getTag());  
   for (int i = 0; i < listOfItems.size(); i++) {                                
       Item item = listOfItems.get(i);              
   }

Первая и вторая строки работают должным образом, но третья выдает исключение.

java.lang.ClassCastException: java.util.ArrayList cannot be cast to Item

listOfItems - это список, содержащий один элемент (в первом случае, если смотреть из режима отладки), itemsPlanning - это HashMap со значениями типа List<Item>, а ключи - это теги для списка редактируемых текстов.

Спасибо.

Похоже, что вопреки тому, что вы думаете, itemsPlanning.get(editText.getTag()) возвращает List<List<Item>>, а не List<Item>. И тип itemsPlanning, вероятно, является необработанным Map, иначе компилятор обнаружил бы эту ошибку за вас.

Eran 24.06.2018 08:26

Ты прав. Даже если определение itemsPlanning - HashMap <Date, List <Item>>, я не знаю, как в нем содержится что-то еще ... Спасибо, сэр !! Хорошего дня.

thmmy95 24.06.2018 08:37
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
52
0

Другие вопросы по теме