2014-09-28 4 views
-4

Я создал hashMap для хранения классов. Проблема в том, что я не могу использовать метод .put() для HashMap.HashMap put() метод не работает

Вот мой импорт:

import algo_packages.DynamicConnectivity; 
import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStreamReader; 
import java.util.*; 

И вот мой код для HashMap.

public class AlgoMain { 
    BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); 

    HashMap hM = new HashMap(); 

    HashMap<String, Class> objList = new HashMap<String, Class>(); 
    objList.put("quickFind", DynamicConnectivity.QuickFInd); 
} 

Здесь «put» дает мне ошибку Can not resolve symbol. Я не могу понять, что не так.

+3

Убедитесь, что включать * * точное сообщение об ошибке включить соответствующую строку. «Невозможно найти символ» - это опечатка того или иного типа, и в этом случае он не имеет ничего, кроме HashMap, как указывает сообщение об ошибке. – user2864740

+0

Ошибка «Не удается разрешить символ« положить »« – dw19

+0

Что такое ** [полное] точное сообщение об ошибке **? – user2864740

ответ

1

Вы должны изменить

objList.put("quickFind", DynamicConnectivity.QuickFInd) 

в

objList.put("quickFind", DynamicConnectivity.QuickFInd.class) 
+1

И, возможно, проверьте правильность капитализации 'QuickFInd' –

+0

Это не имеет никакого эффекта, я попытался создать HashMap без параметров, вещь по какой-то причине не воссоздает метод« put ». – dw19

+0

@ user3224858 Не могли бы вы попробовать java.util.HashMap objList = new HashMap <> (java.lang.String, java.lang.Class); objList.put ("a ", java.lang.String.class); – sol4me

Смежные вопросы