Почему 90 выпадает за пределы массива?
package com.javarush.task.task13.task1326;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName = reader.readLine();
reader.close();
BufferedReader fileReader = new BufferedReader(new InputStreamReader(new FileInputStream(fileName)));
ArrayList<Integer> list = new ArrayList<Integer>();
while (fileReader.ready()) {
int a = Integer.parseInt(fileReader.readLine());
if (a % 2 == 0) {
list.add(a);
}
}
boolean isSorted = false;
int swap;
while (!isSorted) {
isSorted = true;
for (int i = 0; i < list.size() - 1; i++) {
if (list.get(i) < list.get(i + 1)) {
isSorted = false;
swap = list.get(i);
list.set(list.get(i), list.get(i + 1));
list.set(list.get(i + 1), swap);
}
}
}
System.out.println(list);
}
}