code: public static int FVN32hash(int c) {
          long hash = FNV_BASIS;
          hash ^= c >>> 24;
          hash *= FNV_PRIME_32;
          hash ^= 0xFF & (c >>> 16);
          hash *= FNV_PRIME_32;
          hash ^= 0xFF & (c >>> 8);
          hash *= FNV_PRIME_32;
          hash ^= 0xFF & c;
          hash *= FNV_PRIME_32;
          return (int) hash;
      }
docs: Fowler-Noll-Vo 32 bit hash (FNV-1a) for integer key. This is big-endian version (native endianess of JVM).<br/>
  <p/> <h3>Algorithm</h3> <p/>
  <pre>
  hash = offset_basis
  for each octet_of_data to be hashed
  hash = hash xor octet_of_data
  hash = hash * FNV_prime
  return hash</pre>
  
  <h3>Links</h3> <a href="http://www.isthe.com/chongo/tech/comp/fnv/">http://www.isthe.com/chongo/tech/comp/fnv/</a><br/>
  <a href="http://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function">http://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function</a><br/>
  
  @param c integer key to be hashed
  @return hash 32 bit hash