В конкретном случае использования в нашей организации я решил использовать MurmurHash3 (128-разрядная версия), чтобы определить, является ли запись, состоящая из нескольких элементов, уникальной по сравнению с другой записью.Выбор алгоритма и дискуссия относительно целесообразности использования хеша для определения уникальности, может ли нулевое значение (0) использоваться в качестве значения исключения для возврата хеша?
В настоящее время мы используем хеширование в Гуаве для генерациихэш на входе String
и исключения не могут использоваться для сообщения об исключении на входе null
(что возможно).Кроме того, возвращаемое значение должно быть примитивным 64-битным значением, так как оно используется внешней системой, которую я не могу контролировать, поэтому нельзя использовать эквивалент ноль сообщить об исключении либо.
Примечание: Ожидаемый диапазон символов во входной строке в блоках Юникод Basic и Latin-1.Нет символов NUL.