На работе накатал код на телефоне, дома посидел почесал репу, в итоге последний пункт не получается победить.
Вызываю пояснительную бригаду...... Хелп)
package com.javarush.task.task10.task1012;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.*;
/*
Количество букв
*/
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 s = reader.readLine();
list.add(s.toLowerCase());
}
//тут создаем Мапу и заносим в нее Алфавит.
Map<Character,Integer> map = new HashMap<Character,Integer>();
for(int i =0; i<alphabet.size(); i++){
map.put(alphabet.get(i), 0);
}
// тут создаем единую строку со всеми введенными строками из списка list.
String bigString=list.get(0);
for(int i=1; i<list.size(); i++){
bigString = bigString+list.get(i);
}
// тут создаем массив со всеми символами из строки bigString.
char[] bigChar = bigString.toCharArray();
// тут идет переборка массива и коллекции мапа и одновременное сравнение их элементов, с последующим изменением значения мапы.
for(int i= 0; i<bigChar.length; i++){
for(Map.Entry<Character,Integer> pair : map.entrySet()) {
if (pair.getKey().equals(bigChar[i])) {
map.put(pair.getKey(), pair.getValue()+1);
}
}
// вывод содержимого мапы)
}
for(Map.Entry<Character,Integer> pair : map.entrySet()) {
System.out.println(pair.getKey()+" "+pair.getValue());
}
}
}
////// И тут появляется валидатор и начинает ворчать с последним требованием((((((