Не подскажите, почему валидатор не пропускает данное решение? При проверке с помощью sout, вроде выводит всё правильно: 2, 1. Но валидатор упрямо говорит НЕТ.
package com.javarush.task.task08.task0815;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/*
Перепись населения
*/
public class Solution {
public static int countName=0, countFam=0;
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) {
for (Map.Entry<String, String> pair: map.entrySet()) {
String value = pair.getValue();
if (value.equals(name)) ++countName;
}
return Solution.countName;
}
public static int getCountTheSameLastName(Map<String, String> map, String lastName) {
for (Map.Entry<String, String> pair: map.entrySet()) {
String key = pair.getKey();
if (key.equals(lastName)) ++countFam;
}
return Solution.countFam;
}
public static void main(String[] args) {
getCountTheSameFirstName(createMap(), "Никита");
getCountTheSameLastName(createMap(), "Бахан");
}
}
countName
иcountFam
не локальные? И кроме этого, они не сбрасываются до нуля, при вызове соответствующих методов...