РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
708 of 1163 menu

Класс IndexOutOfBoundsException

Класс IndexOutOfBoundsException является подклассом RuntimeException и представляет собой unchecked-исключение. Оно выбрасывается, когда числовое значение индекса выходит за допустимые границы коллекции, массива или строки. Например, при попытке получить элемент по индексу, который меньше нуля или больше либо равен размеру структуры данных. В первом параметре конструктора можно передать сообщение об ошибке, во втором - причину исключения (другое исключение).

Синтаксис

new IndexOutOfBoundsException() new IndexOutOfBoundsException(String message) new IndexOutOfBoundsException(String message, Throwable cause)

Пример

Давайте попробуем обратиться к элементу списка по индексу, который превышает его размер, и посмотрим на возникшее исключение:

import java.util.List; public class Main { public static void main(String[] args) { List<String> list = List.of("a", "b", "c"); try { String res = list.get(5); System.out.println(res); } catch (IndexOutOfBoundsException e) { System.out.println("Caught: " + e); } } }

Результат выполнения кода:

"Caught: java.lang.IndexOutOfBoundsException: Index 5 out of bounds for length 3"

Пример

Давайте вызовем метод substring с некорректным начальным индексом, чтобы получить ошибку выхода за границы:

public class Main { public static void main(String[] args) { String str = "abcde"; try { System.out.println(str.substring(10)); } catch (IndexOutOfBoundsException e) { System.out.println("Caught: " + e.getMessage()); } } }

Результат выполнения кода:

"Caught: begin 10, end 5, length 5"

Пример

Давайте создадим и выбросим исключение IndexOutOfBoundsException вручную с собственным сообщением:

public class Main { public static void main(String[] args) { try { throw new IndexOutOfBoundsException("Custom index error"); } catch (IndexOutOfBoundsException e) { System.out.println(e.getMessage()); } } }

Результат выполнения кода:

"Custom index error"

Смотрите также

  • класс ArrayIndexOutOfBoundsException,
    который возникает при выходе за границы массива
  • класс RuntimeException,
    который является родителем для непроверяемых исключений
  • метод getMessage,
    который возвращает текст сообщения об ошибке
  • метод checkIndex,
    который проверяет корректность индекса
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить