Голову сломал себе :(
package com.javarush.task.task08.task0817;
import java.util.HashMap;
import java.util.Map;
import java.util.Iterator;
/*
Нам повторы не нужны
*/
public class Solution {
public static Map<String, String> createMap() {
Map<String, String> map = new HashMap<String, String>();
map.put("А", "Вася");
map.put("Б", "Петя");
map.put("В", "Вася");
map.put("Г", "Женя");
map.put("Д", "Цук");
map.put("Е", "Бук");
map.put("Ж", "Рок");
map.put("З", "Вок");
map.put("И", "Рык");
map.put("К", "Кык"); //напишите тут ваш код
return map;
}
public static void removeTheFirstNameDuplicates(Map<String, String> map) {
int count=0; //счёт повторов
Map<String, String> map2 = new HashMap<String, String>(map);
Iterator<Map.Entry<String, String>> iterator = map2.entrySet().iterator(); //Итератор для первого прохода
Iterator<Map.Entry<String, String>> iterator2 = map2.entrySet().iterator(); //итератор для второго прохода
while (iterator.hasNext())
{ Map.Entry<String, String> pair = iterator.next();
String name = pair.getValue(); //записываем имя в name
while (iterator2.hasNext())
{Map.Entry<String, String> pair2 = iterator.next();
String name2= pair2.getValue(); // имя в name2
if (name.equals(name2)) count++; //сколько раз одно и тоже же имя
}
if (count>1) //если больше одного раза (самого себя), вызываем удаление.
{removeItemFromMapByValue(map, name);}
count=0; //обнуляем счётчик
}
//напишите тут ваш код
}
public static void removeItemFromMapByValue(Map<String, String> map, String value) {
Map<String, String> copy = new HashMap<>(map);
for (Map.Entry<String, String> pair : copy.entrySet()) {
if (pair.getValue().equals(value)) {
map.remove(pair.getKey());
}
}
}
public static void main(String[] args) {
}
}