Ktoś pomoże, bo w pierwszej chwili wydawał mi się dobry sposób, ale nie działa.
package pl.codegym.task.task08.task0817;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/*
Powtórzenia nie są potrzebne
*/
public class Solution {
public static HashMap<String, String> utworzMap() {
//tutaj wpisz swój kod
HashMap<String, String> nazwiskoImie = new HashMap<>();
nazwiskoImie.put("Szyba", "Michał");
nazwiskoImie.put("szsasasa", "Piotr");
nazwiskoImie.put("sasasssaaa", "Beza");
nazwiskoImie.put("Kowalska", "Anna");
nazwiskoImie.put("Lis", "Ble");
nazwiskoImie.put("fdfd", "Michał");
nazwiskoImie.put("dsds", "Ble");
nazwiskoImie.put("sa", "Damian");
nazwiskoImie.put("qw", "Skywalker");
nazwiskoImie.put("sasassssss", "Nick");
return nazwiskoImie;
}
public static void usunPowtorzoneImiona(Map<String, String> mapa) {
//tutaj wpisz swój kod
Iterator<Map.Entry<String, String>> iterator = mapa.entrySet().iterator();
Iterator<Map.Entry<String, String>> iterator2 = mapa.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, String> entry = iterator.next();
String imie = entry.getValue();
while (iterator2.hasNext()) {
Map.Entry<String, String> entry2 = iterator2.next();
String imie2 = entry2.getValue();
if (imie2.equals(imie)) {
usunElementZMapPoWartosci(mapa, imie2);
}
}
}
}
public static void usunElementZMapPoWartosci(Map<String, String> mapa, String wartosc) {
HashMap<String, String> kopia = new HashMap<String, String>(mapa);
for (Map.Entry<String, String> para : kopia.entrySet()) {
if (para.getValue().equals(wartosc))
mapa.remove(para.getKey());
}
}
public static void main(String[] args) {
}
}