Question

I am trying to combine two different hashmaps. But in those two maps, there are some duplicate entries, so I have to remove thoese entries after combine.

For example:

HashMap 1:
100 hello
101 nice

HashMap 2:

100 hello
102 good

After combine, the hashmap should looks like:

100 hello
101 nice
102 good

I have tried putall,but seems it does not remove duplicate entries. Could someone help me on a fast way to do that?

Was it helpful?

Solution

I don't see a problem in your approach.

HashMap<String, Object> first = new HashMap<String, Object>();
HashMap<String, Object> second = new HashMap<String, Object>();

first.put("100", "hello");
first.put("101", "nice");
second.put("100", "hello");
second.put("102", "good");

first.putAll(second);
System.out.println(first);

outputs

{102=good, 101=nice, 100=hello}

Try to check, if your handling of HashMaps is correct.

OTHER TIPS

The keys of a HashMap can't be duplicates, because they are represented in a Set, so merging the two maps should do the work.

you can add two hashmap map1 and map2 to third hashmap map3 just declare the input type for value as Object as all the data type have their super class as Object class.

HashMap<String, Integer> map1 = new HashMap<String, Integer>();
HashMap<String, String> map2 = new HashMap<String, String>();

HashMap<String, Object> map3;
map3 = new HashMap<>();

map3.putAll(map1);
map3.putAll(map2);
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top