2014-09-01 2 views
0

Я получаю ArrayIndexOutOfBoundsException в нижнем формате, выполняя свой код на Android.Что такое длина, указанная в ArrayIndexOutOfBoundsException?

java.lang.ArrayIndexOutOfBoundsException: length=16; index=-1 

Этот формат приходит только тогда, когда я получаю ArrayIndexOutOfBoundsException в Android. В Java я просто печатаю индекс.

Вопрос в том, что означает длина в моем заявлении?

Емкость: ArrayList или размер ArrayList?

+0

Размер по умолчанию ArrayList равен 16. –

ответ

1

java.lang.ArrayIndexOutOfBoundsException: длина = 16; Индекс = -1

длина указывает размер массива
индекс указывает на незаконный индекс, для которого ArrayIndexOutOfBoundsException был брошен.

  • Размер массива 16
  • Допустимые индексы 0 - 15
  • Недопустимый индекс, который пытался получить доступ в "-1"

Является ли это емкость ArrayList или размер ArrayList?

Это sizeArrayList.

размер указывает количество элементов в этом списке; тогда как емкость указывает, сколько элементов может быть потенциально размещено в ArrayList без перераспределения его внутренних структур.

4

Размер массива, который составляет 16, поэтому он исходит от 0 до 15. Однако вы пытаетесь получить доступ к элементу в позиции -1, который, конечно, не существует.

0

Длина относится к числу элементов в объекте ArrayList (в настоящее время хранится внутри него). Если длина п элементов длины, то длина идет от нуля до п - 1

Надежда, что помогает :)

Смежные вопросы