Package org.aoju.bus.core.toolkit
Class HashKit
java.lang.Object
org.aoju.bus.core.toolkit.HashKit
Hash算法大全
推荐使用FNV1算法
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic intadditiveHash(String key, int prime) 加法hashstatic intAP算法static intBernstein's hashstatic intBKDR算法static intDEK算法static intDJB算法static intELF算法static intfnvHash(byte[] data) 改进的32位FNV算法1static int改进的32位FNV算法1static longHF Hash算法static longHFIP Hash算法static intintHash(int key) Thomas Wang的算法,整数hashstatic intjavaDefaultHash(String text) JAVA自己带的算法static intJS算法static long混合hash算法,输出64位的值static intoneByOneHash(String key) 一次一个hashstatic intPJW算法static introtatingHash(String key, int prime) 旋转hashstatic intRS算法hashstatic intSDBM算法static longTianL Hash算法static intuniversal(char[] key, int mask, int[] tab) Universal Hashingstatic intzobrist(char[] key, int mask, int[][] tab) Zobrist Hashing
-
Constructor Details
-
HashKit
public HashKit()
-
-
Method Details
-
additiveHash
加法hash- Parameters:
key- 字符串prime- 一个质数- Returns:
- hash结果
-
rotatingHash
旋转hash- Parameters:
key- 输入字符串prime- 质数- Returns:
- hash值
-
oneByOneHash
一次一个hash- Parameters:
key- 输入字符串- Returns:
- 输出hash值
-
bernstein
Bernstein's hash- Parameters:
key- 输入字节数组- Returns:
- 结果hash
-
universal
public static int universal(char[] key, int mask, int[] tab) Universal Hashing- Parameters:
key- 字节数组mask- 掩码tab- tab- Returns:
- hash值
-
zobrist
public static int zobrist(char[] key, int mask, int[][] tab) Zobrist Hashing- Parameters:
key- 字节数组mask- 掩码tab- tab- Returns:
- hash值
-
fnvHash
public static int fnvHash(byte[] data) 改进的32位FNV算法1- Parameters:
data- 数组- Returns:
- hash结果
-
fnvHash
改进的32位FNV算法1- Parameters:
data- 字符串- Returns:
- hash结果
-
intHash
public static int intHash(int key) Thomas Wang的算法,整数hash- Parameters:
key- 整数- Returns:
- hash值
-
rsHash
RS算法hash- Parameters:
text- 字符串- Returns:
- hash值
-
jsHash
JS算法- Parameters:
text- 字符串- Returns:
- hash值
-
pjwHash
PJW算法- Parameters:
text- 字符串- Returns:
- hash值
-
elfHash
ELF算法- Parameters:
text- 字符串- Returns:
- hash值
-
bkdrHash
BKDR算法- Parameters:
text- 字符串- Returns:
- hash值
-
sdbmHash
SDBM算法- Parameters:
text- 字符串- Returns:
- hash值
-
djbHash
DJB算法- Parameters:
text- 字符串- Returns:
- hash值
-
dekHash
DEK算法- Parameters:
text- 字符串- Returns:
- hash值
-
apHash
AP算法- Parameters:
text- 字符串- Returns:
- hash值
-
tianlHash
TianL Hash算法- Parameters:
text- 字符串- Returns:
- Hash值
-
javaDefaultHash
JAVA自己带的算法- Parameters:
text- 字符串- Returns:
- hash值
-
mixHash
混合hash算法,输出64位的值- Parameters:
text- 字符串- Returns:
- hash值
-
hfHash
HF Hash算法- Parameters:
data- 字符串- Returns:
- hash结果
-
hfIpHash
HFIP Hash算法- Parameters:
data- 字符串- Returns:
- hash结果
-