Сначала всё работало, прочёл что нужно считывать по одному символу, начал править.
Теперь не пойму почему не работает данный кусок? Неужели нельзя решить без использования Map напрямую? Не хочется всё переписывать заново..
String allText = "";
while (fr.ready()){
allText += fr.read();
}
на выходе вот что)
1 142
2 26
3 33
4 36
5 20
6 12
7 8
8 12
9 14
package com.javarush.task.task18.task1821;
/*
Встречаемость символов
*/
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) throws IOException {
Map<Character, Integer> map = new TreeMap<>();
FileReader fr = new FileReader(args[0]);
String allText = "";
while (fr.ready()){
allText += fr.read();
}
char[] chars = allText.toCharArray();
for(int j = 0; j<chars.length; j++){
char c = chars[j];
int count = 0;
for(int i = 0; i < chars.length; i++) {
if (c==chars[i]){
count++;
}
}
map.put(c,count);
}
fr.close();
for(Map.Entry entry : map.entrySet()){
System.out.println(entry.getKey()+" "+entry.getValue());
}
}
}