Class MurmurHash


  • public final class MurmurHash
    extends Object
    Murmur hash 2.0.
    The murmur hash is a relative fast hash function from http://murmurhash.googlepages.com/ for platforms with efficient multiplication.
    This is a re-implementation of the original C code plus some additional features.
    Public domain.
    Version:
    1.0.2
    Author:
    Viliam Holub
    • Constructor Summary

      Constructors 
      Constructor Description
      MurmurHash()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static int hash32​(byte[] data, int length)
      Generates 32-bit hash from byte array with default seed value.
      static int hash32​(byte[] data, int length, int seed)
      Generates 32-bit hash from byte array of the given length and seed.
      static int hash32​(String text)
      Generates 32-bit hash from a string.
      static int hash32​(String text, int from, int length)
      Generates 32-bit hash from a substring.
      static long hash64​(byte[] data, int length)
      Generates 64-bit hash from byte array with default seed value.
      static long hash64​(byte[] data, int length, int seed)
      Generates 64-bit hash from byte array of the given length and seed.
      static long hash64​(String text)
      Generates 64-bit hash from a string.
      static long hash64​(String text, int from, int length)
      Generates 64-bit hash from a substring.
    • Constructor Detail

      • MurmurHash

        public MurmurHash()
    • Method Detail

      • hash32

        public static int hash32​(byte[] data,
                                 int length,
                                 int seed)
        Generates 32-bit hash from byte array of the given length and seed.
        Parameters:
        data - byte array to hash
        length - length of the array to hash
        seed - initial seed value
        Returns:
        32-bit hash of the given array
      • hash32

        public static int hash32​(byte[] data,
                                 int length)
        Generates 32-bit hash from byte array with default seed value.
        Parameters:
        data - byte array to hash
        length - length of the array to hash
        Returns:
        32-bit hash of the given array
      • hash32

        public static int hash32​(String text)
        Generates 32-bit hash from a string.
        Parameters:
        text - string to hash
        Returns:
        32-bit hash of the given string
      • hash32

        public static int hash32​(String text,
                                 int from,
                                 int length)
        Generates 32-bit hash from a substring.
        Parameters:
        text - string to hash
        from - starting index
        length - length of the substring to hash
        Returns:
        32-bit hash of the given string
      • hash64

        public static long hash64​(byte[] data,
                                  int length,
                                  int seed)
        Generates 64-bit hash from byte array of the given length and seed.
        Parameters:
        data - byte array to hash
        length - length of the array to hash
        seed - initial seed value
        Returns:
        64-bit hash of the given array
      • hash64

        public static long hash64​(byte[] data,
                                  int length)
        Generates 64-bit hash from byte array with default seed value.
        Parameters:
        data - byte array to hash
        length - length of the array to hash
        Returns:
        64-bit hash of the given string
      • hash64

        public static long hash64​(String text)
        Generates 64-bit hash from a string.
        Parameters:
        text - string to hash
        Returns:
        64-bit hash of the given string
      • hash64

        public static long hash64​(String text,
                                  int from,
                                  int length)
        Generates 64-bit hash from a substring.
        Parameters:
        text - string to hash
        from - starting index
        length - length of the substring to hash
        Returns:
        64-bit hash of the given array