diff options
Diffstat (limited to 'libjava/java')
-rw-r--r-- | libjava/java/util/HashMap.java | 6 | ||||
-rw-r--r-- | libjava/java/util/Hashtable.java | 4 |
2 files changed, 7 insertions, 3 deletions
diff --git a/libjava/java/util/HashMap.java b/libjava/java/util/HashMap.java index bf10e9e..4bc88b7 100644 --- a/libjava/java/util/HashMap.java +++ b/libjava/java/util/HashMap.java @@ -157,7 +157,7 @@ public class HashMap extends AbstractMap * @param loadFactor the load factor * * @throws IllegalArgumentException if (initialCapacity < 0) || - * (initialLoadFactor > 1.0) || + * (loadFactor <= 0) */ public HashMap(int initialCapacity, float loadFactor) throws IllegalArgumentException @@ -167,7 +167,9 @@ public class HashMap extends AbstractMap + initialCapacity); if (loadFactor <= 0) throw new IllegalArgumentException("Illegal Load Factor: " + loadFactor); - + + if (initialCapacity == 0) + initialCapacity = 1; buckets = new Entry[initialCapacity]; this.loadFactor = loadFactor; this.threshold = (int) (initialCapacity * loadFactor); diff --git a/libjava/java/util/Hashtable.java b/libjava/java/util/Hashtable.java index 4fd8167..4475785 100644 --- a/libjava/java/util/Hashtable.java +++ b/libjava/java/util/Hashtable.java @@ -179,7 +179,9 @@ public class Hashtable extends Dictionary + initialCapacity); if (loadFactor <= 0) throw new IllegalArgumentException("Illegal Load Factor: " + loadFactor); - + + if (initialCapacity == 0) + initialCapacity = 1; buckets = new Entry[initialCapacity]; this.loadFactor = loadFactor; this.threshold = (int) (initialCapacity * loadFactor); |