C:\Папочка для теста\Новый текстовый документ (2).txt
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1604
at com.javarush.task.task18.task1803.Solution.main(Solution.java:22)
Подскажите с чем связано и как решить. Вроде у меня все нормально с индексами
package com.javarush.task.task18.task1804;
import java.io.FileInputStream;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.List;
import java.util.ArrayList;
/*
Самые редкие байты
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
FileInputStream i = new FileInputStream(r.readLine());
r.close();
List<Integer> list = new ArrayList<Integer>(i.available());
while (i.available()>0) {
list.add(i.available(), i.read());
}
i.close();
Map<Integer, Integer> map = new HashMap<Integer, Integer>(i.available()/3);
for (int a = 0; a<map.size(); a++) {
int count = 0;
for (int c = 0; c<map.size(); c++) {
if(list.get(a)==(list.get(c))) {
count++;
}
}
map.put(list.get(a), count);
}
int min = 0;
for(Map.Entry<Integer, Integer> pair: map.entrySet()){
min = pair.getKey();
for(Map.Entry<Integer, Integer> io : map.entrySet()) {
int current = io.getKey();
if(min>current) {
min = current;
}
}
break;
}
for(Map.Entry<Integer, Integer> pair : map.entrySet()) {
int currentKey = pair.getKey();
if(min==currentKey) {
System.out.print(pair.getValue()+" ");
}
}
}
}