Можно ли создать карту конфигурации с пустым / пустым ключом? Если да, каким должно быть ожидаемое поведение в отношении стручков?

Этот <?> является зверем. Это часто приводит к путанице и ошибкам, потому что, когда вы видите это сначала, вы начинаете верить, <?> является подстановочным знаком для любого типа java . Что ... неправда. <?> - неизвестный тип, небольшая и неприятная разница.

Это не проблема, когда вы используете его с Class. Обе строки работают и компилируются:

Class anyType = String.class;
Class <?> theUnknownType = String.class;

Но - если мы начнем использовать его с коллекциями, то мы увидим странные ошибки компиляции:

List<?> list = new ArrayList<Object>();  // ArrayList<?> is not allowed
list.add("a String");                    // doesn't compile ...

Наш List<?> не является которая подходит для любого типа объектов. Он может хранить только один тип: мистический «unkown type». Конечно, это не настоящий тип.

0
задан Vinodh Nagarajaiah 18 January 2019 в 04:38
поделиться