wood burning stoves 2.0
The moose likes Beginning Java and the fly likes Confused about TreeMap, entrySet, and Iterator Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Confused about TreeMap, entrySet, and Iterator" Watch "Confused about TreeMap, entrySet, and Iterator" New topic

Confused about TreeMap, entrySet, and Iterator

Charles Bradley
Ranch Hand

Joined: Oct 04, 2009
Posts: 32
I don't think I understand the subject topics very well. I have a TreeMap that seems to work for storing a retrieving data. The value is a Drill object, and the key is a String of the object. I have a bunch of junit tests that seem to indicate it works. The show method in the code produces the right number of output lines. I know I don't understand it; I just copied an example from somewhere. The method isRealDrill is a copy of the show method that tries to look at each at each Drill in the map. When I run the tests for isRealDrill,
they all fail at the line with the cast to Drill, from the object that is returned by the Iterator. What exactly is returned. the key, the value, both (in what format?), or what? Before anyone mentions it, I know I can solve the problem faster using the getDrill method. But why does the cast not work? I think the same problem will show up when I try to make the show method produce prettier output.

The problem is line 29. Ignore line 30, a leftover from a failed effort.


Steve Luke

Joined: Jan 28, 2003
Posts: 4181

You can follow the javadoc link that was created when you typed TreeMap in your post. You will see that the entrySet method returns a set of Map.Entry<K,V>. Which means, since you have a TreeMap<String,Drill> when you get the entrySet you get a Set<Map.Entry<String,Drill>> and from that you get an Iterator<Map.Entry<String,Drill>> and each item in the Iterator is of type Map.Entry<String,Drill>. Then to get the key from the value you use curentDrill.getKey() and to get the drill you get currentDrill.getValue()

I agree. Here's the link: http://aspose.com/file-tools
subject: Confused about TreeMap, entrySet, and Iterator
It's not a secret anymore!