After getting the hash value of the key in the Hashtable class, the following operations are performed:
hash & 0x7FFFFFFF
The reason is that the obtained hash value may be a negative number, and 0x7FFFFFFF represents the maximum value of the int type, and the binary representation of 0x7FFFFFFF is as follows:
0111 1111 1111 1111 1111 1111 1111 1111
The first bit represents the sign bit, and 0 represents a positive integer, so that a positive integer is obtained when the 'AND' operation is performed with the hash value.