Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.javarush.test.level08.lesson08.task05;
- import java.util.*;
- /* Удалить людей, имеющих одинаковые имена
- Создать словарь (Map<String, String>) занести в него десять записей по принципу «фамилия» - «имя».
- Удалить людей, имеющих одинаковые имена.
- */
- public class Solution
- {
- public static HashMap<String, String> createMap()
- {
- //Напишите тут ваш код
- HashMap<String,String> map = new HashMap<String, String>();
- map.put("Ленин1", "Молодой");
- map.put("Ленин2", "ОченьМолодой");
- map.put("Ленин3", "НеоченьМолодой");
- map.put("Ленин4", "ВсегдаМолодой");
- map.put("Ленин5", "Молодой");
- map.put("Ленин6", "МолодойКовбой");
- map.put("Ленин7", "Молодой");
- map.put("Ленин8", "МолодойЗверь");
- map.put("Ленин9", "Молодой");
- map.put("Ленин10", "МолодойВождь");
- return map;
- }
- public static void removeTheFirstNameDuplicates(HashMap<String, String> map)
- {
- //Напишите тут ваш код
- List<String> valueList=new ArrayList<String>(map.values());/*создаем List <String> valueList, куда заносим
- все values из map*/
- for(int i=0;i<valueList.size();i++){ /*создаем цикл равный по размеру valueList*/
- for(int j=i+1;j<valueList.size();j++){/*берем элемент j(следующий за i )*/
- if(valueList.get(i).equals(valueList.get(j))){/*сравниваем value i (предыдущий со следующим (j))*/
- removeItemFromMapByValue(map,valueList.get(j));/*если true применяем removeItemFromMapByValue*/
- /*После передачи дубля (j) функции выходим из if*/
- break;
- }
- }
- }
- }
- public static void removeItemFromMapByValue(HashMap<String, String> map, String value)
- {
- HashMap<String, String> copy = new HashMap<String, String>(map);
- for (Map.Entry<String, String> pair: copy.entrySet())
- {
- if (pair.getValue().equals(value))
- map.remove(pair.getKey());
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment