Итак, первая точка создает HashMap
с начальным хранилищем 7, под строкой создается HashMap
с начальной емкостью 7, которая принимает String
ключ типа и String
значение типа
HashMap<String, String> map = new HashMap<String, String>(7);
Пример добавлениязначение ключа для HashMap
map.put("hello", "world");
В зависимости от того, что вам нужно создать HashMap
с ключом типа String
и значением типа Q
, поэтому я считаю, что Q
должен быть классом или интерфейсом
HashMap<String, Q> map = new HashMap<String, Q>(7);
Примечание: hashmap переопределит значение для дубликатов ключей
Если вы не хотите использовать Коллекции для этого, вам следует создать CustomHashMap
с реализацией
class HashMapCustom<K, V> {
private Entry<K,V>[] table; //Array of Entry.
private int capacity= 7; //Initial capacity of HashMap
static class Entry<K, V> {
K key;
V value;
Entry<K,V> next;
public Entry(K key, V value, Entry<K,V> next){
this.key = key;
this.value = value;
this.next = next;
}
}
public HashMapCustom(){
table = new Entry[capacity];
}
В приведенном выше коде по умолчанию начальная емкость равна 7 HashMapCustom<String, Q> hashMapCustom = new HashMapCustom<String, Q>();
Но все же вам нужно написать собственную логику для put
, delete
, get
иМетоды, которые вам нужны.Я предлагаю вам проверить это ref1 , ref2