HashMap с ключом массива байтов и значением String - функция containsKey () не работает

Я использую ключ HashMap: byte [] и значение String. Но я понимаю, что даже я помещаю один и тот же объект (тот же байтовый массив и то же строковое значение), используя

myList.put(TheSameByteArray, TheSameStringValue)

в HashMap таблица все еще вставляет новый объект с другим HashMapEntry. Тогда функция содержит ключ () не может работать.

Может кто-нибудь объяснить это для меня? Как я могу это исправить? Благодарю. (Android Java)

@Override public boolean containsKey(Object key) {
    if (key == null) {
        return entryForNullKey != null;
    }

    int hash = Collections.secondaryHash(key);
    HashMapEntry<K, V>[] tab = table;
    for (HashMapEntry<K, V> e = tab[hash & (tab.length - 1)];
            e != null; e = e.next) {
        K eKey = e.key;
        if (eKey == key || (e.hash == hash && key.equals(eKey))) {
            return true;
        }
    }
    return false;
}

Ответы на вопрос(3)

Ваш ответ на вопрос