Class AbstractHasher

    • Constructor Detail

      • AbstractHasher

        AbstractHasher()
    • Method Detail

      • putDouble

        public final Hasher putDouble​(double d)
        Description copied from interface: Hasher
        Equivalent to putLong(Double.doubleToRawLongBits(d)).
        Specified by:
        putDouble in interface Hasher
        Specified by:
        putDouble in interface PrimitiveSink
      • putFloat

        public final Hasher putFloat​(float f)
        Description copied from interface: Hasher
        Equivalent to putInt(Float.floatToRawIntBits(f)).
        Specified by:
        putFloat in interface Hasher
        Specified by:
        putFloat in interface PrimitiveSink
      • putUnencodedChars

        public Hasher putUnencodedChars​(java.lang.CharSequence charSequence)
        Description copied from interface: Hasher
        Equivalent to processing each char value in the CharSequence, in order. In other words, no character encoding is performed; the low byte and high byte of each char are hashed directly (in that order). The input must not be updated while this method is in progress.

        Warning: This method will produce different output than most other languages do when running the same hash function on the equivalent input. For cross-language compatibility, use Hasher.putString(java.lang.CharSequence, java.nio.charset.Charset), usually with a charset of UTF-8. For other use cases, use putUnencodedChars.

        Specified by:
        putUnencodedChars in interface Hasher
        Specified by:
        putUnencodedChars in interface PrimitiveSink
      • putString

        public Hasher putString​(java.lang.CharSequence charSequence,
                                java.nio.charset.Charset charset)
        Description copied from interface: Hasher
        Equivalent to putBytes(charSequence.toString().getBytes(charset)).

        Warning: This method, which reencodes the input before hashing it, is useful only for cross-language compatibility. For other use cases, prefer Hasher.putUnencodedChars(java.lang.CharSequence), which is faster, produces the same output across Java releases, and hashes every char in the input, even if some are invalid.

        Specified by:
        putString in interface Hasher
        Specified by:
        putString in interface PrimitiveSink