Я уже знаю, как инициализировать Java HashMap
, используя один из следующих 2 способов
// way 1: apply generic type saftey
HashMap<String, Integer> hashMap1 = new HashMap<String, Integer>();
// way 2: general without apply generic type saftey
HashMap<String, Integer> hashMap2 = new HashMap();
Моя проблема
Какова лучшая практика
Согласно Eclipse Marker
Безопасность типов: выражение типа HashMap требует неконтролируемого преобразования для соответствия HashMap
Так что егорекомендуем использовать
new HashMap<String, Integer>();
Но в соответствии с Sonar Linter
Заменить спецификацию типа в этом вызове конструктора оператором diamond ("<>").
Поэтому рекомендуется использовать
new HashMap();
Какой из них лучше?Почему?