### Question:
HMapII implements MapII, Cloneable, Serializable { @Override public void plus(MapII m) { for (MapII.Entry e : m.entrySet()) { int key = e.getKey(); if (this.containsKey(key)) { this.put(key, this.get(key) + e.getValue()); } else { this.put(key, e.getValue()); } } } HMapII(int initialCapacity, float loadFactor);  HMapII(int initialCapacity);  HMapII();  HMapII(MapII m); @Override int size(); @Override boolean isEmpty(); @Override int get(int key); @Override boolean containsKey(int key); @Override int put(int key, int value); @Override void putAll(MapII m); @Override int remove(int key); @Override void clear(); @Override boolean containsValue(int value); @Override Object clone(); @Override Set<Integer> keySet(); @Override Collection<Integer> values(); @Override Set<MapII.Entry> entrySet(); @Override String toString(); @Override void plus(MapII m); @Override long dot(MapII m); @Override void increment(int key); @Override void increment(int key, int value); MapII.Entry[] getEntriesSortedByValue(); MapII.Entry[] getEntriesSortedByValue(int n);  }### Answer:
@Test public void testPlus() throws IOException { HMapII m1 = new HMapII(); m1.put(1, 5); m1.put(2, 22); HMapII m2 = new HMapII(); m2.put(1, 4); m2.put(3, 5); m1.plus(m2); assertEquals(m1.size(), 3); assertTrue(m1.get(1) == 9); assertTrue(m1.get(2) == 22); assertTrue(m1.get(3) == 5); }