Ребята подскажите, что я сделал не так? Валидатор ругается на последний пункт, хотя всё вроде верно...
package com.javarush.task.task10.task1012;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;
/*
Введи с клавиатуры 10 строчек и посчитай в них количество различных букв без учета регистра. Результат выведи на экран в алфавитном порядке.
Пример вывода:
а 5
б 8
в 3
г 7
д 0
...
я 9
Требования:
1. Программа должна 10 раз считывать данные с клавиатуры.
2. Программа должна выводить текст на экран.
3. Выведенный текст должен содержать 33 строки.
4. Каждая строка вывода должна содержать букву русского алфавита, пробел и количество раз, которое буква встречалась в введенных строках.
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
// Алфавит
List<Character> alphabet = Arrays.asList(
'а', 'б', 'в', 'г', 'д', 'е', 'ё', 'ж',
'з', 'и', 'й', 'к', 'л', 'м', 'н', 'о',
'п', 'р', 'с', 'т', 'у', 'ф', 'х', 'ц',
'ч', 'ш', 'щ', 'ъ', 'ы', 'ь', 'э', 'ю', 'я');
// Ввод строк
ArrayList<String> list = new ArrayList<String>();
for (int i = 0; i < 10; i++) {
String line = reader.readLine();
list.add(line.toLowerCase());
}
// напишите тут ваш код
List<Character> listWords = new ArrayList<>();
for(String string : list) {
for (char c : string.toCharArray()) {
listWords.add(c);
}
}
Map<Character, Integer> map = new HashMap<>();
int count = 0;
for(int i = 0; i < alphabet.size(); i++) {
for(int j = 0; j < listWords.size(); j++) {
if(alphabet.get(i).equals(listWords.get(j))) {
count++;
//System.out.println(alphabet.get(i) + " " + count);
}
}
//System.out.println(alphabet.get(i) + " " + count);
map.put(alphabet.get(i), count);
count = 0;
}
for(Map.Entry<Character, Integer> pair : map.entrySet()) {
System.out.println(pair.getKey() + " " + pair.getValue());
}
}
}