Re: VERY Strange problem with HashTable and HashMap.
<rlnasr@gmail.com> wrote:
If you execute this code you would think that you get 4 entries in the
Hashtable, however only three entries are present. I am using jdk
1.5.0_09. I observed the same kind of bug with Hashmap as well.
You're doing something else wrong. Post a complete (simple, self-contained)
example and we'll tell you what's going on.
What seems to be happening is the final "put" for the "FAX" key is
overwriting the first "DESC" entry. Very very strange. Does anyone
know what may be happening here?
You're not telling us the whole story. Something else in your code is
confusing you.
java.util.Hashtable hashtable = new java.util.Hashtable();
hashtable.put("DESC", Boolean.FALSE);
hashtable.put("ATT", Boolean.FALSE);
hashtable.put("POST", Boolean.FALSE);
hashtable.put("FAX", Boolean.FALSE);
return hashtable;
I see no such problem.
import java.util.Hashtable;
public class Test {
public static Hashtable getTable() {
Hashtable hashtable = new Hashtable();
hashtable.put("DESC", Boolean.FALSE);
hashtable.put("ATT", Boolean.FALSE);
hashtable.put("POST", Boolean.FALSE);
hashtable.put("FAX", Boolean.FALSE);
return hashtable;
}
public static void main(String[] args) {
Hashtable ht = getTable();
System.out.println("number of entries: " + ht.size());
}
}
$ java -version
java version "1.5.0_11"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode)
$ java -cp . Test
number of entries: 4
--
Mark Rafn dagon@dagon.net <http://www.dagon.net/>