I use HashMap<String, ArrayList<String>>
in Java.
When input value is comes,
For example, input value is [1, "stack"]
, [2, "over"]
, [1, "flow"]
.....
I want to enter value [1, ["stack", "flow"]]
, [2, "over"]
in HashMap.
But key value is duplicate. So, HashMap was overwrite.
So, What can I do?
Try a Guava Multimap :
The traditional way to represent a graph in Java is
Map<V, Set<V>>
, which is awkward in a number of ways. Guava's Multimap framework makes it easy to handle a mapping from keys to multiple values.A
ListMultimap
will map keys to aList
of values, keeping track of their order, while aSetMultimap
will map keys to aSet
of distinct values.
Call get
on the Map
. If it returns a List
( Set
may be more appropriate) add to that. If it returns null
, create a collection, add the value, put it in the map.
Better, use some third-party multimap.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.