Из книги CLRS ( "Введение в алгоритмы" ) существует несколько функций хэширования, таких как мода, умножение и т.д.
Какую функцию хэширования использует Java для сопоставления клавиш с слотами?
Я видел здесь вопрос Хеширование, используемое в Java Language. Но это не отвечает на вопрос, и я думаю, что отмеченный ответ на этот вопрос неверен. В нем говорится, что hashCode() позволяет вам выполнять собственную функцию хеширования для Hashtable, но я думаю, что это неправильно.
Целое число, возвращаемое hashCode(), является реальным ключом для Hashtble, тогда Hashtable использует хеширующую функцию для хеширования hashCode(). Этот ответ подразумевает, что Java дает вам шанс дать Hashtable функцию хеширования, но нет, это неправильно. hashCode() дает реальный ключ, а не хеширующую функцию.
Итак, что именно использует функция хэширования Java?