Помогите -1 индекс при попытке получения числа из листа

  • Автор темы Автор темы Sergeo
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Sergeo

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Solomka
решено
 
Последнее редактирование:
Передаешь неверный индекс при получении элемента из листа.

Первый индекс листа всегда = 0, а последний = размер листа - 1.
Таким образом, если у тебя есть лист из 4-х элементов, то получить из него объекты ты можешь по индексам 0,1,2,3. Ты же пытаешься получить по индексу -1 и 4, отсюда и IndexOutOfBoundsException.

А почему тебя индекс неверный - это уже тебе определять.
По приведенному тобой коду это неясно
 
Последнее редактирование:
Передаешь неверный индекс при получении элемента из листа.

Первый индекс листа всегда = 0, а последний = размер листа - 1.
Таким образом, если у тебя есть лист из 4-х элементов, то получить из него объекты ты можешь по индексам 0,1,2,3. Ты же пытаешься получить по индексу -1 и 4, отсюда и IndexOutOfBoundsException.

А почему тебя индекс неверный - это уже тебе определять.
По приведенному тобой коду это неясно
У меня там 5 элементов, но почему-то при попытке получения по индексу 4 - ошибка
 
У меня там 5 элементов, но почему-то при попытке получения по индексу 4 - ошибка
Элементов 4, а не 5. Это указано в исключении:
java.lang.IndexOutOfBoundsException: Index: 4, Size: 4

Разбирайся, чего не хватает )
 
Элементов 4, а не 5. Это указано в исключении:
java.lang.IndexOutOfBoundsException: Index: 4, Size: 4

Разбирайся, чего не хватает )
Разобрался. Метод немного не так выполнял свою задачу). Последний элемент он игнорировал.


Вся проблема была в <. Я исправил на <=, и все заработало)
Код:
        for (int i = min; i < max; i++) {
            ranges.add(i);
        }


Спасибо.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх