0

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?

2 Answers 2

3

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 a List of values, keeping track of their order, while a SetMultimap will map keys to a Set of distinct values.

Sign up to request clarification or add additional context in comments.

1 Comment

Oh.. Thanks for you. I will use Guava!
1

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.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.