Количество возвращает, но почему тогда не проходит?
package com.javarush.task.task08.task0815;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/*
Перепись населения
Создать словарь (Map<String, String>) занести в него десять записей по принципу "Фамилия" - "Имя".
Проверить сколько людей имеют совпадающие с заданным именем или фамилией.
Требования:
1. Программа не должна выводить текст на экран.
2. Программа не должна считывать значения с клавиатуры.
3. Метод createMap() должен создавать и возвращать словарь Map с типом элементов String, String состоящих из 10 записей по принципу «Фамилия» - «Имя».
4. Метод getCountTheSameFirstName() должен возвращать число людей у которых совпадает имя.
5. Метод getCountTheSameLastName() должен возвращать число людей у которых совпадает фамилия.
*/
public class Solution {
public static Map<String, String> createMap() {
//напишите тут ваш код
Map<String, String> map = new HashMap<>();
map.put("Иванов", "Иван");
map.put("Петров", "Пётр");
map.put("Сергеев", "Сергей");
map.put("Тимуров", "Тимур");
map.put("Олегов", "Олег");
map.put("Андреев", "Андрей");
map.put("Борисов", "Борис");
map.put("Кондратов", "Кондрат");
map.put("Сидоров", "Иван");
map.put("Егоров", "Тимур");
return map;
}
public static int getCountTheSameFirstName(Map<String, String> map, String name) {
//напишите тут ваш код
Iterator<String> itr = map.keySet().iterator();
int count = 0;
while (itr.hasNext()) {
if(itr.next().contains(name)) {
count++;
}
}
return count;
}
public static int getCountTheSameLastName(Map<String, String> map, String lastName) {
//напишите тут ваш код
Iterator<String> itr = map.values().iterator();
int count = 0;
while(itr.hasNext()) {
if(itr.next().contains(lastName)) {
count++;
}
}
return count;
}
public static void main(String[] args) {
}
}