Class Murmur

java.lang.Object
org.aoju.bus.core.lang.Murmur
All Implemented Interfaces:
Serializable

public class Murmur extends Object implements Serializable
Murmur3 32bit、64bit、128bit 哈希算法实现
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static long[]
    hash128(byte[] data)
    Murmur3 128-bit 算法.
    static long[]
    hash128(byte[] data, int length, int seed)
    Murmur3 128-bit variant.
    static long[]
    Murmur3 128-bit Hash值计算
    static int
    hash32(byte[] data)
    Murmur3 32-bit Hash值计算
    static int
    hash32(byte[] data, int length, int seed)
    Murmur3 32-bit Hash值计算
    static int
    Murmur3 32-bit Hash值计算
    static long
    hash64(byte[] data)
    Murmur3 64-bit 算法 This is essentially MSB 8 bytes of Murmur3 128-bit variant.
    static long
    hash64(byte[] data, int length, int seed)
    Murmur3 64-bit 算法 This is essentially MSB 8 bytes of Murmur3 128-bit variant.
    static long
    Murmur3 64-bit Hash值计算

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Murmur

      public Murmur()
  • Method Details

    • hash32

      public static int hash32(CharSequence data)
      Murmur3 32-bit Hash值计算
      Parameters:
      data - 数据
      Returns:
      Hash值
    • hash32

      public static int hash32(byte[] data)
      Murmur3 32-bit Hash值计算
      Parameters:
      data - 数据
      Returns:
      Hash值
    • hash32

      public static int hash32(byte[] data, int length, int seed)
      Murmur3 32-bit Hash值计算
      Parameters:
      data - 数据
      length - 长度
      seed - 种子,默认0
      Returns:
      Hash值
    • hash64

      public static long hash64(CharSequence data)
      Murmur3 64-bit Hash值计算
      Parameters:
      data - 数据
      Returns:
      Hash值
    • hash64

      public static long hash64(byte[] data)
      Murmur3 64-bit 算法 This is essentially MSB 8 bytes of Murmur3 128-bit variant.
      Parameters:
      data - 数据
      Returns:
      Hash值
    • hash64

      public static 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

      public static long[] hash128(CharSequence data)
      Murmur3 128-bit Hash值计算
      Parameters:
      data - 数据
      Returns:
      Hash值 (2 longs)
    • hash128

      public static long[] hash128(byte[] data)
      Murmur3 128-bit 算法.
      Parameters:
      data - -数据
      Returns:
      Hash值 (2 longs)
    • hash128

      public static long[] hash128(byte[] data, int length, int seed)
      Murmur3 128-bit variant.
      Parameters:
      data - 数据
      length - 长度
      seed - 种子,默认0
      Returns:
      Hash值(2 longs)