почему так решение проходит: public static int getCountTheSameFirstName(HashMap<String, String> map, String name) { //напишите тут ваш код int count = 0; for (String key : map.keySet()) { if (map.get(key) == name) count++; } return count; } public static int getCountTheSameLastName(HashMap<String, String> map, String lastName) { //напишите тут ваш код int count = 0; for (String key : map.keySet()) { if (key == lastName) count++; } return count; } а вот так нет: public static int getCountTheSameFirstName(HashMap<String, String> map, String name) { //напишите тут ваш код int count = 0; for (String key : map.values()) { // ведь тут я получаю множество всех значений if (map.get(key) == name) // почему для значения нужно писать МЭПточкаГЕТ(КЕЙ) count++; } return count; } public static int getCountTheSameLastName(HashMap<String, String> map, String lastName) { //напишите тут ваш код int count = 0; for (String key : map.keySet()) { // а тут получаю множество всех ключей if (map.get(key) == lastName) // а для ключа нужно использовать только КЕЙ count++; } return count; }