Вы уверены, что не хотите отображать Strings
в массивы, а не наоборот?
В любом случае, чтобы ответить на ваш вопрос, проблема в том, что вы создаете массив new
при вызове containsKey()
. Это возвращает false между вами, у вас есть два отдельно new
ed массива, которые, как оказалось, имеют одинаковые элементы и размерность. См. Ответ Ювала, чтобы увидеть правильный способ проверки, содержится ли массив в качестве ключа.
Альтернативный, более продвинутый подход заключается в создании собственного класса, который оборачивает массив и перезаписывает hashCode()
, чтобы два массива с одинаковым измерением и элементами имели одинаковые хеш-коды.