Подтвердить что ты не робот

Создание словаря <T, U> в ошибке Java

В С#

Dictionary<String, String> dictionary = new Dictionary<String, String>();

В Java эти ошибки с помощью

Невозможно создать экземпляр типа Словарь

Что может быть неправильным?

В моем коде это следует с помощью

dictionary.put("vZip", jsonUdeals.getString("vZip"));

Я знаю, это звучит слишком тривиально. Но я в недоумении! Если Словарь не делает этого (к которому я сейчас сильно подозреваю), то какой DataStructure использовать.

4b9b3361

Ответ 1

Dictionary - абстрактный класс в Java. Он также устарел; вы должны использовать интерфейс Map; что-то вроде:

Map<String,String> map = new HashMap<String,String>();

Обратите внимание, что HashMap<K,V> - это конкретный класс, но мы назначаем его Map<K,V> ссылка, которая является интерфейсом. Это рекомендуемый стиль в Java, поскольку он позволяет вам переключаться HashMap на, например. Hashtable на более позднем этапе, без необходимости изменять все.

Ответ 2

Используйте HashMap следующим образом:

Map<String, String> dictionary = new HashMap<String, String>();

Ответ 3

Словарь - это абстрактный класс, используйте Hashtable

Ответ 4

Словарь - это унаследованный класс. То же самое можно сделать с помощью hashmap или concurrentHashMap (если требуется синхронизация Java 8)