в файл засунул это
! " # $ % & ' ( ) * + , - . /
3. 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
4. @ A B C D E F G H I J K L M N O
5. P Q R S T U V W X Y Z [ \ ] ^ _
6. ` a b c d e f g h i j k l m n o
7. p q r s t u v w x y z { | }
на выходе вижу это (пробовал много раз повторять, считает количество правильно).
! 1
" 1
# 1
$ 1
% 1
& 1
' 1
( 1
) 1
* 1
+ 1
, 1
- 1
. 6
/ 1
0 1
1 1
2 1
3 2
4 2
5 2
6 2
7 2
8 1
9 1
: 1
; 1
< 1
= 1
> 1
? 1
@ 1
A 1
B 1
C 1
D 1
E 1
F 1
G 1
H 1
I 1
J 1
K 1
L 1
M 1
N 1
O 1
P 1
Q 1
R 1
S 1
T 1
U 1
V 1
W 1
X 1
Y 1
Z 1
[ 1
\ 1
] 1
^ 1
_ 1
` 1
a 1
b 1
c 1
d 1
e 1
f 1
g 1
h 1
i 1
j 1
k 1
l 1
m 1
n 1
o 1
p 1
q 1
r 1
s 1
t 1
u 1
v 1
w 1
x 1
y 1
z 1
{ 1
| 1
} 1
package com.javarush.task.task18.task1821;
/*
Встречаемость символов
*/
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Map;
import java.util.TreeMap;
public class Solution {
public static void main(String[] args) throws IOException {
TreeMap<Character, Integer> map = new TreeMap<>();
FileInputStream fis = new FileInputStream(args[0]);
while (fis.available() > 0) {
char c = (char)fis.read();
if (c >= '!' && c <= '}') {
if (map.containsKey(c)) {
map.put(c, map.get(c) +1);
}
if (!map.containsKey(c)) {
map.put(c, 1);
}
}
}
for (Map.Entry<Character, Integer> s1 : map.entrySet()) {
System.out.println(s1.getKey() + " " + s1.getValue());
}
fis.close();
}
}