private int hash32shift(int key)
    {
        key += hash2seed;
        key = ~key + (key << 15);
        key = key ^ (key >>> 12);
        key = key + (key << 2);
        key = key ^ (key >>> 4);
        key = key * 2057;
        key = key ^ (key >>> 16);

        return key;
    }
private int hash32shift ( int key ) { key += hash2seed ; key = ~ key + ( key << 15 ) ; key = key ^ ( key > > > 12 ) ; key = key + ( key << 2 ) ; key = key ^ ( key > > > 4 ) ; key = key * 2057 ; key = key ^ ( key > > > 16 ) ; return key ; }
Thomas Wang's 32-bit shift hash function. <a href="http://www.concentric.net/~Ttwang/tech/inthash.htm"/>
http://www.concentric.net/~Ttwang/tech/inthash.htm</a>

@param  key The integer to compute a hash of.

@return A hash of the integer.