Друзья, объясните почему выдает ошибку при удаление (Задачу решил НО!):
ublic static void remove10000(List list) {
for (int i = 0; i < 10000; i++)
list.remove(i);
//напишите тут ваш код
}
Выдает:
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index 5000 out-of-bounds for length 5000
at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
at java.base/java.util.Objects.checkIndex(Objects.java:372)
at java.base/java.util.ArrayList.remove(ArrayList.java:517)
at com.javarush.task.task08.task0808.Solution.remove10000(Solution.java:48)
at com.javarush.task.task08.task0808.Solution.main(Solution.java:18)
А так все норма:
public static void remove10000(List list) {
for (int i = 0; i < list.size(); i++)
list.remove(i);
//напишите тут ваш код
}
или
public static void remove10000(List list) {
for (int i = 0; i < list.size(); i++)
list.remove(0);
//напишите тут ваш код
}
И почему не проходит валидацию:
list.removeAll();
Спасибо.