Все выполнил, все, вроде, считает. Но при сортировке ключей буква ё оказывается в конце алфавита. Пол дня решал задачу и пол дня сейчас пытаюсь переставить эту ччертову букву ё. Пробовал переписывать в другой массив, но порядок ключей опять теряется. Подскажите пожалуйста, как перетащить букву ё на свое место.
package com.javarush.task.task10.task1012;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.TreeMap;

/*
Количество букв
*/

public class Solution {
    public static void main(String[] args) throws Exception {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        // алфавит
        String abc = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
        char[] abcArray = abc.toCharArray();

        ArrayList<Character> alphabet = new ArrayList<Character>();
        for (int i = 0; i < abcArray.length; i++) {
            alphabet.add(abcArray[i]);
        }

        // ввод строк
        ArrayList<String> list = new ArrayList<String>();
        for (int i = 0; i < 10; i++) {
            String s = reader.readLine();
            list.add(s.toLowerCase());
        }


        // напишите тут ваш код
        //для начала переводим коллекцию строк в коллекцию из массивов символов.

        ArrayList<Character[]> listOfCharMass = new ArrayList<>();

        for (int i = 0; i < list.size(); i++){
            Character ch[] =  new Character[list.get(i).length()];

            for (int j = 0; j < list.get(i).length(); j++){
                ch[j] = list.get(i).charAt(j);
            }
            listOfCharMass.add(ch);
            //перевели коллекцию строк в коллекцию массивов символов.
        }
           // надо сравнить каждый символ в коллекции алфавит с каждым элементом коллекции listofcharmass
        TreeMap<Character, Integer> finalList = new TreeMap<>();
        for(Character i : alphabet){
            finalList.put(i, 0);
        }

        for (HashMap.Entry<Character, Integer> pair : finalList.entrySet()){
            Integer count = 1;
            for (Character[] mass : listOfCharMass){
                for(int i = 0; i < mass.length; i++){
                    if (pair.getKey().equals(mass[i])){
                        pair.setValue(count++);
                    }
                }
            }
        }
            for (HashMap.Entry<Character, Integer> pair : finalList.entrySet()){
                System.out.println(pair.getKey() + " " + pair.getValue());
            }

    }

}
            //осталось отсортировать ключи по алфавиту.