Расшифруйте, пожалуйста, что делает блок кода ниже (из решения).
Я не уверен, что вообще правильно понимаю в данном случае. Хотя бы без try.
int[] byteCountArray = new int[256];
try (FileInputStream fileInputStream = new FileInputStream(fileName)) {
while (fileInputStream.available() > 0) {
byteCountArray[fileInputStream.read()] += 1;
}
}
Hello
17 уровень
Что делает этот код
Обсуждается
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Сергей
30 октября 2021, 18:14
Ведет подсчет, сколько раз встречается данный байт в файле. Т.е. он считывает байт из файла, в массиве в ячейке с адресом, соответствующим данному байту (в ячейке с индексом == данному байту (byteCountArray[fileInputStream.read()])) увеличивает значение на единицу. т.е. если байт встретится в файле 10 раз - в ячейке десять раз будет произведен инкремент.
+1
KIRAРазработчик в prosv.ruExpert
30 октября 2021, 12:21полезный
Считывают байты в массив в котором индекс это считанный байт, а значение по этому индексу количество таких байтов
+1