# HG changeset patch # User shade # Date 1411576990 25200 # Node ID abc6b733e3abbc08ec75d0e34c75b1341d8b1738 # Parent f71a6d13260c928951e66e6bc3b6ed72b60e4de0 8058643: (str) Re-examine hashCode implementation Reviewed-by: martin, alanb, sherman, redestad diff -r f71a6d13260c -r abc6b733e3ab jdk/src/java.base/share/classes/java/lang/String.java --- a/jdk/src/java.base/share/classes/java/lang/String.java Wed Sep 24 14:19:25 2014 +0400 +++ b/jdk/src/java.base/share/classes/java/lang/String.java Wed Sep 24 09:43:10 2014 -0700 @@ -1451,11 +1451,9 @@ */ public int hashCode() { int h = hash; - if (h == 0 && value.length > 0) { - char val[] = value; - - for (int i = 0; i < value.length; i++) { - h = 31 * h + val[i]; + if (h == 0) { + for (char v : value) { + h = 31 * h + v; } hash = h; }