Package org.miaixz.bus.core.codec.hash
Class MurmurHash
java.lang.Object
org.miaixz.bus.core.codec.hash.MurmurHash
Murmur3 32bit、64bit、128bit 哈希算法实现 此算法来自于:...
32-bit Java port of https://code.google.com/p/smhasher/source/browse/trunk/MurmurHash3.cpp#94 128-bit Java port of https://code.google.com/p/smhasher/source/browse/trunk/MurmurHash3.cpp#255
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionencode(byte[] bytes) 执行编码hash128(byte[] data) Murmur3 128-bit 算法.hash128(byte[] data, int length, int seed) Murmur3 128-bit variant.hash128(byte[] data, int offset, int length, int seed) Murmur3 128-bit variant.hash128(CharSequence data) Murmur3 128-bit Hash值计算inthash32(byte[] data) Murmur3 32-bit Hash值计算inthash32(byte[] data, int length, int seed) Murmur3 32-bit Hash值计算inthash32(byte[] data, int offset, int length, int seed) Murmur3 32-bit Hash值计算inthash32(CharSequence data) Murmur3 32-bit Hash值计算longhash64(byte[] data) Murmur3 64-bit 算法 This is essentially MSB 8 bytes of Murmur3 128-bit variant.longhash64(byte[] data, int length, int seed) 类Murmur3 64-bit 算法 This is essentially MSB 8 bytes of Murmur3 128-bit variant.longhash64(CharSequence data) Murmur3 64-bit Hash值计算
-
Field Details
-
INSTANCE
单例
-
-
Constructor Details
-
MurmurHash
public MurmurHash()
-
-
Method Details
-
encode
Description copied from interface:Encoder执行编码 -
hash32
Murmur3 32-bit Hash值计算- Parameters:
data- 数据- Returns:
- Hash值
-
hash32
public int hash32(byte[] data) Murmur3 32-bit Hash值计算 -
hash32
public int hash32(byte[] data, int length, int seed) Murmur3 32-bit Hash值计算- Parameters:
data- 数据length- 长度seed- 种子,默认0- Returns:
- Hash值
-
hash32
public int hash32(byte[] data, int offset, int length, int seed) Murmur3 32-bit Hash值计算- Parameters:
data- 数据offset- 数据开始位置length- 长度seed- 种子,默认0- Returns:
- Hash值
-
hash64
Murmur3 64-bit Hash值计算- Parameters:
data- 数据- Returns:
- Hash值
-
hash64
public long hash64(byte[] data) Murmur3 64-bit 算法 This is essentially MSB 8 bytes of Murmur3 128-bit variant. -
hash64
public long hash64(byte[] data, int length, int seed) 类Murmur3 64-bit 算法 This is essentially MSB 8 bytes of Murmur3 128-bit variant.- Parameters:
data- 数据length- 长度seed- 种子,默认0- Returns:
- Hash值
-
hash128
Murmur3 128-bit Hash值计算- Parameters:
data- 数据- Returns:
- Hash值 (2 longs)
-
hash128
Murmur3 128-bit 算法. -
hash128
Murmur3 128-bit variant.- Parameters:
data- 数据length- 长度seed- 种子,默认0- Returns:
- Hash值(2 longs)
-
hash128
Murmur3 128-bit variant.- Parameters:
data- 数据offset- 数据开始位置length- 长度seed- 种子,默认0- Returns:
- Hash值(2 longs)
-