Я не до конца понимаю что делает эта часть кода в задании...
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());
}
}
}
Red Fox
12 уровень
Помогите понять значение этой части кода:
Решен
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
sH@Rk
29 ноября 2021, 10:12решение
for (Map.Entry<String, String> pair : copy.entrySet())
Буквально так и читается - заносить в переменную pair для каждой пары Map.Entry<String, String> из множества copy.entrySet()
if (pair.getValue().equals(value)) { // как читается эта строка и каково её назначение?
Если значение (pair.getValue()) в паре еквивалентно (equals) значению (value)
Назначение - проверить, равно ли значение в паре переданному для сравнения значению
+2
Александр
29 ноября 2021, 04:09решение
https://metanit.com/java/tutorial/5.8.php
перебор элементов в copy
если ((значение из pair)эквивалентно.значению)
где pair - пара Ключ-Значение в Map copy
+3