There seems to be an ongoing debate about whether it is safe to rely on the current implementation of String.hashCode() because, technically speaking, it is guaranteed by the specification (Javadoc).
- Why did Sun specify
String.hashCode()'s implementation in the specification? - Why would developers ever need to rely upon a specific implementation of hashCode()?
- Why is Sun so afraid that the sky will fall if
String.hashCode()is changed in the future? (This is probably be explained by #2)