IndexOutOfBoundsException
Возникает при обращении к списку или строке по индексу вне допустимого диапазона.
Доступно с: Java 1.0
Синтаксис
public class IndexOutOfBoundsException extends RuntimeExceptionПримеры
Список и строка:
void main() {
List<String> list = List.of("a", "b");
try {
list.get(5);
} catch (IndexOutOfBoundsException e) {
IO.println(e.getMessage());
}
try {
"abc".charAt(10);
} catch (IndexOutOfBoundsException e) {
IO.println(e.getClass().getSimpleName() + ": " + e.getMessage());
}
}Результат:
Index: 5 Size: 2
StringIndexOutOfBoundsException: Index 10 out of bounds for length 3Примечания
У него есть наследники: ArrayIndexOutOfBoundsException для массивов и StringIndexOutOfBoundsException для строк. Перехват IndexOutOfBoundsException ловит их все. Для проверки индекса есть Objects.checkIndex(index, length).
См. также
- ArrayIndexOutOfBoundsException — Возникает при обращении к массиву по несуществующему индексу.
- List.get() — Возвращает элемент списка по индексу.
- List.subList() — Возвращает часть списка между двумя индексами.
Вопросы и ответы по теме
В учебнике
- Что такое исключения — Исключения в Java — как программа сообщает об ошибке, как читать трассировку стека, частые исключения и иерархия Throwable.