Отдельно методы работают и возвращают количество людей. Что не так?
package com.javarush.task.task08.task0815;
import java.util.*;
/*
Перепись населения
*/
public class Solution {
public static HashMap<String, String> createMap() {
//напишите тут ваш код
HashMap<String, String> map = new HashMap<String, String>();
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(HashMap<String, String> map, String name) {
//напишите тут ваш код
ArrayList<String> list = new ArrayList<String>();
Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();
int countName = 0;
while (iterator.hasNext()) {
Map.Entry<String, String> pair = iterator.next();
String firstName = pair.getValue();
list.add(firstName);
}
for (int i = 0; i < list.size(); i++) {
for (int j = 0; j < list.size(); j++) {
if (i == j) {
continue;
}
if (list.get(i).equals(list.get(j))) {
countName++;
}
}
}
return countName;
}
public static int getCountTheSameLastName(HashMap<String, String> map, String lastName) {
//напишите тут ваш код
ArrayList<String> list = new ArrayList<String>();
Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();
int countLastName = 0;
while (iterator.hasNext()) {
Map.Entry<String, String> pair = iterator.next();
String lastNameKey = pair.getKey();
list.add(lastNameKey);
}
for (int i = 0; i < list.size(); i++) {
for (int j = 0; j < list.size(); j++) {
if (i == j) {
continue;
}
if (list.get(i).equals(list.get(j))) {
countLastName++;
}
}
}
return countLastName;
}
public static void main(String[] args) {
}
}