--- old/src/java.base/share/classes/java/util/HashMap.java 2019-01-04 10:00:16.574620065 -0800 +++ new/src/java.base/share/classes/java/util/HashMap.java 2019-01-04 10:00:16.278620311 -0800 @@ -445,7 +445,7 @@ initialCapacity); if (initialCapacity > MAXIMUM_CAPACITY) initialCapacity = MAXIMUM_CAPACITY; - if (loadFactor <= 0 || Float.isNaN(loadFactor)) + if (!(loadFactor > 0)) // also checks for NaNs throw new IllegalArgumentException("Illegal load factor: " + loadFactor); this.loadFactor = loadFactor; @@ -1420,7 +1420,7 @@ // Read in the threshold (ignored), loadfactor, and any hidden stuff s.defaultReadObject(); reinitialize(); - if (loadFactor <= 0 || Float.isNaN(loadFactor)) + if (!(loadFactor > 0)) // also checks for NaNs throw new InvalidObjectException("Illegal load factor: " + loadFactor); s.readInt(); // Read and ignore number of buckets