Was soll in Wert eingetragen werden? Was soll übergeben werden? Momentan übergebe ich "H6"
package de.codegym.task.task08.task0817;
import java.util.HashMap;
import java.util.Map;
import java.io.*;
import java.util.*;
/*
Wir brauchen keine Wiederholungen
*/
public class Solution {
public static HashMap<String, String> mapErstellen() {
// schreib hier deinen Code
HashMap<String, String> map = new HashMap<String, String>();
map.put("A", "H1");
map.put("B", "H2");
map.put("C", "H3");
map.put("D", "H4");
map.put("E", "H5");
map.put("F", "H5");
map.put("G", "H5");
map.put("H", "H5");
map.put("I", "H5");
map.put("J", "H6");
return map;
}
public static void doppelteVornamenEntfernen(Map<String, String> map) {
String wert="";
Set<String> Set = new HashSet<String>();
for (Iterator itr = map.entrySet().iterator(); itr.hasNext();) {
Map.Entry<String, String> entrySet = (Map.Entry) itr.next();
wert = entrySet.getValue();
if (!Set.add(wert)) {
itr.remove();
}
}
elementNachWertAusMapEntfernen(map,wert);
}
public static void elementNachWertAusMapEntfernen(Map<String, String> map, String wert) {
HashMap<String, String> kopie = new HashMap<String, String>(map);
for (Map.Entry<String, String> paar : kopie.entrySet()) {
if (paar.getValue().equals(wert))
map.remove(paar.getKey());
}
}
public static void main(String[] args) {
HashMap<String, String> map = mapErstellen();
doppelteVornamenEntfernen(map);
System.out.println(map);
}
}