com.xiaoleilu.hutool
类 Hashs

java.lang.Object
  继承者 com.xiaoleilu.hutool.Hashs

public class Hashs
extends Object

Hash算法大全
推荐使用FNV1算法

作者:
Goodzzp 2006-11-20

构造方法摘要
Hashs()
           
 
方法摘要
static int additiveHash(String key, int prime)
          加法hash
static int APHash(String str)
          AP算法
static int bernstein(String key)
          Bernstein's hash
static int BKDRHash(String str)
          BKDR算法
static int DEKHash(String str)
          DEK算法
static int DJBHash(String str)
          DJB算法
static int ELFHash(String str)
          ELF算法
static int FNVHash(byte[] data)
          改进的32位FNV算法1
static int FNVHash(String data)
          改进的32位FNV算法1
static int intHash(int key)
          Thomas Wang的算法,整数hash
static int javaDefaultHash(String str)
          JAVA自己带的算法
static int JSHash(String str)
          JS算法
static long mixHash(String str)
          混合hash算法,输出64位的值
static int oneByOneHash(String key)
          一次一个hash
static int PJWHash(String str)
          PJW算法
static int rotatingHash(String key, int prime)
          旋转hash
static int RSHash(String str)
          RS算法hash
static int SDBMHash(String str)
          SDBM算法
static long tianlHash(String str)
          TianL Hash算法
static int universal(char[] key, int mask, int[] tab)
          Universal Hashing
static int zobrist(char[] key, int mask, int[][] tab)
          Zobrist Hashing
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

Hashs

public Hashs()
方法详细信息

additiveHash

public static int additiveHash(String key,
                               int prime)
加法hash

参数:
key - 字符串
prime - 一个质数
返回:
hash结果

rotatingHash

public static int rotatingHash(String key,
                               int prime)
旋转hash

参数:
key - 输入字符串
prime - 质数
返回:
hash值

oneByOneHash

public static int oneByOneHash(String key)
一次一个hash

参数:
key - 输入字符串
返回:
输出hash值

bernstein

public static int bernstein(String key)
Bernstein's hash

参数:
key - 输入字节数组
返回:
结果hash

universal

public static int universal(char[] key,
                            int mask,
                            int[] tab)
Universal Hashing

参数:
key - 字节数组
mask - 掩码
tab - tab
返回:
hash值

zobrist

public static int zobrist(char[] key,
                          int mask,
                          int[][] tab)
Zobrist Hashing

参数:
key - 字节数组
mask - 掩码
tab - tab
返回:
hash值

FNVHash

public static int FNVHash(byte[] data)
改进的32位FNV算法1

参数:
data - 数组
返回:
hash结果

FNVHash

public static int FNVHash(String data)
改进的32位FNV算法1

参数:
data - 字符串
返回:
hash结果

intHash

public static int intHash(int key)
Thomas Wang的算法,整数hash

参数:
key - 整数
返回:
hash值

RSHash

public static int RSHash(String str)
RS算法hash

参数:
str - 字符串
返回:
hash值

JSHash

public static int JSHash(String str)
JS算法

参数:
str - 字符串
返回:
hash值

PJWHash

public static int PJWHash(String str)
PJW算法

参数:
str - 字符串
返回:
hash值

ELFHash

public static int ELFHash(String str)
ELF算法

参数:
str - 字符串
返回:
hash值

BKDRHash

public static int BKDRHash(String str)
BKDR算法

参数:
str - 字符串
返回:
hash值

SDBMHash

public static int SDBMHash(String str)
SDBM算法

参数:
str - 字符串
返回:
hash值

DJBHash

public static int DJBHash(String str)
DJB算法

参数:
str - 字符串
返回:
hash值

DEKHash

public static int DEKHash(String str)
DEK算法

参数:
str - 字符串
返回:
hash值

APHash

public static int APHash(String str)
AP算法

参数:
str - 字符串
返回:
hash值

tianlHash

public static long tianlHash(String str)
TianL Hash算法

参数:
str - 字符串
返回:
Hash值

javaDefaultHash

public static int javaDefaultHash(String str)
JAVA自己带的算法

参数:
str - 字符串
返回:
hash值

mixHash

public static long mixHash(String str)
混合hash算法,输出64位的值

参数:
str - 字符串
返回:
hash值


Copyright © 2014. All rights reserved.