collections - Multi-valued hashtable in Java -
Is it possible to have multiple values for the same key in a hash table? If not, can you suggest any class or interface that can be used?
No it is the idea of hash tables.
 However, you can either use the  map & lt; YourKeyObject, list & lt; YourValueObject & gt; & Gt; You can roll your roll with  and use some utility methods to make lists if it does not exist, or use something like that. 
Example:
  string key = "hello"; Multimap & lt; String, integer & gt; MyMap = HashMultimap.create (); MyMap.put (key, 1); MyMap.put (key, 5000); Println (myMap.get (key)); // print either "[1, 5000]" or "[5000, 1]" myMap = ArrayListMultimap.create (); MyMap.put (key, 1); MyMap.put (key, 5000); Println (myMap.get (key)); // always prints "[1, 5000]"    Note that  multimap  is not  accurate  as a home-baked solution is ; Synchronizes all of its methods, while  multimap  does not make such a guarantee, this means that you can have problems using  Multimap   if you want to Using multiple threads  If your map is used only on one thread, then it will not make any difference (and you should have used anyway instead of  Hashtable .) . 
Comments
Post a Comment