Can someone tell me what are the maximum and minimum int values that the Java String.hashCode() method can return?
3 Answers
String.hashCode() returns an int calculated by using the below formula:
public int hashCode()
Returns a hash code for this string.
The hash code for a String object is computed as
s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]using int arithmetic, where
s[i]is the i-th character of the string, n is the length of the string, and ^ indicates exponentiation. (The hash value of the empty string is zero.)
The minimum and max value can be found with the below constants.
System.out.println(java.lang.Integer.MAX_VALUE); // 2147483647
System.out.println(java.lang.Integer.MIN_VALUE); // -2147483648