Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

tricky ques.

 
cs singh
Ranch Hand
Posts: 36
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator


Answer is 3. , can anybody explain??
 
Alex Khvatov
Ranch Hand
Posts: 39
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The answer is that HashMap uses the integer returned from calling a method Object.hashCode(). hashCode of an Integer(1) is always 1. By the definition HashMap cannot have duplicate keys, it replaces the value with the duplicate key with the new one; and returns either null if no previous value has been mapped with this key or the previous value that was mapped with this key.

Alex
 
Murali Mohan
Ranch Hand
Posts: 66
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ya Alex is right.

 
Ruchir Ghildiyal
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Also, to print out the result, the program uses System.out.println where it.next() gives an object of DoorKeys. To print out, this object is implicitly converted to String using toString() and since toString() method is overriden here to print out the result between "[" and "]", the value is printed out as [2]. Had the toString() method not been overriden, the result would have been plain vanilla 2.
[ February 26, 2006: Message edited by: Ruchir Ghildiyal ]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic