package com.javarush.test.level08.lesson08.task05;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/* Удалить людей, имеющих одинаковые имена
Создать словарь (Map) занести в него десять записей по принципу «фамилия» - «имя».
Удалить людей, имеющих одинаковые имена.
*/
public class Solution
{
public static HashMap createMap()
{
//напишите тут ваш код
HashMap map = new HashMap();
map.put("Ivanov","Ivan");
map.put("Petrov","Sasha");
map.put("Sidorov","Ivan");
map.put("Lermontov","Kolya");
map.put("Pushkin","Olya");
map.put("Stalonne","Galya");
map.put("Reygan","Inna");
map.put("Drobot","Ivan");
map.put("Pirogov","Stepan");
map.put("Krab","Petro");
return map;
}
public static void removeTheFirstNameDuplicates(HashMap map)
{
//напишите тут ваш код
HashMap copy = new HashMap(map);
for (String value: copy.values())
if (Collections.frequency(copy.values(),value) > 1)
removeItemFromMapByValue(map,value);
}
public static void removeItemFromMapByValue(HashMap map, String value)
{
HashMap copy = new HashMap(map);
for (Map.Entry pair: copy.entrySet())
{
if (pair.getValue().equals(value))
map.remove(pair.getKey());
}
}
}
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/* Удалить людей, имеющих одинаковые имена
Создать словарь (Map
Удалить людей, имеющих одинаковые имена.
*/
public class Solution
{
public static HashMap
{
//напишите тут ваш код
HashMap
map.put("Ivanov","Ivan");
map.put("Petrov","Sasha");
map.put("Sidorov","Ivan");
map.put("Lermontov","Kolya");
map.put("Pushkin","Olya");
map.put("Stalonne","Galya");
map.put("Reygan","Inna");
map.put("Drobot","Ivan");
map.put("Pirogov","Stepan");
map.put("Krab","Petro");
return map;
}
public static void removeTheFirstNameDuplicates(HashMap
{
//напишите тут ваш код
HashMap
for (String value: copy.values())
if (Collections.frequency(copy.values(),value) > 1)
removeItemFromMapByValue(map,value);
}
public static void removeItemFromMapByValue(HashMap
{
HashMap
for (Map.Entry
{
if (pair.getValue().equals(value))
map.remove(pair.getKey());
}
}
}
Решение 6 задачи:
ОтветитьУдалитьpublic class Solution {
public static Map createMap() {
Map map = new HashMap<>();
map.put("Jonh", 1520);
map.put("Bill", 450);
map.put("Jack", 750);
map.put("Matt", 125);
map.put("Antony", 650);
map.put("Serg", 1110);
map.put("Micho", 870);
map.put("Alan", 250);
map.put("Donald", 550);
map.put("Sam", 800);
return map;
}
public static void removeItemFromMap(Map map) {
for (Iterator> entries = map.entrySet().iterator(); entries.hasNext();) {
// Iterator - тип перменной типа >
// создаем переменную типа Iterator и называем ее entries
// присваиваем ей значение всех множеств пар из map ALL.K-V
Map.Entry entry = entries.next();
// Map.Entry - тип переменной одного поля K-V
// создаем переменную - entry
// и присваиваем ей значение следующего next из всех множеств;
if (entry.getValue() < 500) // если зп меньше 500 в значении getValue полученного одного поля
entries.remove(); // то берем все множество, и удаляем поле, на котором сейчас установлен итератор
}