простой ответ:
StringIndexOutOfBoundsException
Брошено по методам String, чтобы указать, что индекс либо отрицателен, либо превышает размер строки. Для некоторых методов, таких как метод charAt, это исключение также генерируется, когда индекс равен размеру строки.
может быть, вы обращаетесь к своей строке с помощью метода charAt ()? в любом случае доступ к позиции в строке, которой там нет, вернет массив, подобный вашему.
String myString;
myString = "Hello";
System.out.println(charAt(10)); will cause a stringsIndexOutOfBoundsException
Подробный ответ:
объясняет, что происходит до того, как выдается какое-либо исключение indexoutofboundsexception. Я использовал массивы в качестве базового примера.
Это означает, что вы выполняете итерацию за пределами 300 контактов. Ut достиг конца массива и попытался получить доступ к следующему значению, которое является пустым. это возвращает исключение indexoutofboundsex.
При циклическом просмотре массива вы должны понимать, что первый элемент в массиве определяется как 0. Поскольку у java есть индекс, начинающийся с 0. Так что, обращаясь к первому элементу, вы должны делать это так myArray[0];
Итак, если вы хотите получить доступ к последнему элементу вашего массива, вы делаете что-то вроде myArray[myArray.size - 1]
Итак, если у вас есть 10 элементов, у вас будет массив, который выглядит следующим образом:
[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Note there is no 10 as it starts from 0.
поэтому, когда вы пытаетесь получить доступ к элементу 10, вы делаете это так. туАггау [myArray.size-1] * +1033 *
myArray.size вернет размер массива, равный 10, затем мы минус 1, чтобы получить значение 9, затем мы можем получить доступ к десятому элементу, указав значение 9.
Это аккуратный способ отлова любых ошибок без вашего приложения во время выполнения. вместо этого он выдает пользователю сообщение об ошибке.
PK