В джаве можно вызывать методы void с пустыми параметрами. Трудновато понять, какие именно параметры передавать в метод. Получить значение переменной из другого метода напрямую (по имени) не видит. _ "Программа не должна выводить текст на экран". - а как я увижу результат? Неудобно, что дается сразу нерабочий код, который не требуется выводить на экран - отследить ошибку выполнения гораздо труднее. == В порядке бреда: если нужно именно кол-во совпадающих имен, то можно создать новую map (или set) с ними как с ключами и сравнить ее размер со старой map: поскольку ключи уникальны, разница и составит кол-во повторяющихся значений. ==== переменную нужно объявить public в начале класса, чтобы видеть ее в нем. static не требут создания объекта для вызова Но при вызове из другого метода public static ArrayList = null Ага, чтобы этого не было, его нужно не только объявить, но и проинициализировать public static ArrayList<String> strings = new ArrayList<>(); === у одного человека имя не может совпадать с самим собой, значит, если речь о совпадении имени, то от двух. (если есть разница в кол-ве элементов set, то +1. Т.е. совпадают 3 имени, одно из них будет уником, поэтому 10-8 даст 2 вместо ожидаемых 3). +++ Сделал карту, сразу вывел ключи и значения в 2 списка. Обратился к публичным переменным из методов – создал set, чтобы отфильтровать уники). Из main вызвал map, из нее – метод с именем, а из него – метод с фамилией. Закомментировал вывод, чтобы валидатор принял. _ Считает правильно, но валидатор ругается на последние 2 условия