ClassCastException в Java 11, но не в Java 8 при использовании HashMap?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 ClassCastException в Java 11, но не в Java 8 при использовании HashMap?

Сообщение Anonymous »

Пожалуйста, взгляните на мой код:

Код: Выделить всё

Object longL = 2548214;
Map map = new HashMap(1);
map.put("LongNumber", longL);
List returnlist = new ArrayList(10);
returnlist.add(map);

List versionMap1 = new ArrayList(10);
versionMap1.add(returnlist);

List docIdVersionNameMap = new ArrayList();
docIdVersionNameMap.addAll((List)versionMap1.get(0));

Map versionDoc=docIdVersionNameMap.get(0);

Map versionDocInfo=new HashMap(1);
versionDocInfo.put(versionDoc.get("LongNumber"),"abc");
System.out.println(versionDocInfo.toString());
В Java_1.8_60 (компиляция и запуск) этот код работает нормально, но при компиляции и запуске в Java 11 выдается следующее исключение:

Код: Выделить всё

Exception in thread "main" java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.String (java.lang.Integer and java.lang.String are in module java.base of l
oader 'bootstrap')
at teststringandlong.Trial.main(Trial.java:35)
Есть ли какие-либо изменения в Java 11 относительно HashMap?

Подробнее здесь: https://stackoverflow.com/questions/552 ... ng-hashmap
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»