Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
0 / 0 / 0
Регистрация: 26.11.2019
Сообщений: 14

Не знаю как исправить ошибку java.lang.ArrayIndexOutOfBoundsException­: length=5; index=5

06.05.2020, 20:26. Показов 2582. Ответов 4

Студворк — интернет-сервис помощи студентам
Использую RecyclerView. Приложение запускается, но во время просмотра списка вылетает на 5 строчке. Ниже код Адаптера и логи
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
АДАПТЕР
 
public class Adapter extends RecyclerView.Adapter<Adapter.ViewHolder> {
 
    private LayoutInflater inflater;
    private String[] lTitles;
    private  String[] lContent;
    Adapter(Context context, String[] titles, String[] contents){
        this.inflater = LayoutInflater.from(context);
        this.lTitles = titles;
        this.lContent = contents;
 
    }
 
 
    @NonNull
    @Override
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
        View view = inflater.inflate(R.layout.custom_view, viewGroup, false);
        return new ViewHolder(view);
    }
 
    @Override
    public void onBindViewHolder(@NonNull ViewHolder viewHolder, int i) {
 
        String title = lTitles[i];
        String content = lContent[i];
        viewHolder.lessonsTitle.setText(title);
        viewHolder.lessonsContent.setText(content);
 
    }
 
    @Override
    public int getItemCount() {
        return lTitles.length;
    }
 
    static class ViewHolder extends RecyclerView.ViewHolder {
 
        TextView lessonsTitle;
        TextView lessonsContent;
 
        ViewHolder(@NonNull View itemView) {
            super(itemView);
            lessonsTitle = itemView.findViewById(R.id.lessonsTitle);
            lessonsContent = itemView.findViewById(R.id.lessonsContent);
        }
    }
}
Java
1
2
3
4
5
6
7
8
ЛОГИ!
 
2020-05-06 23:24:45.149 2224-2224/com.example.book D/AndroidRuntime: Shutting down VM
2020-05-06 23:24:45.151 2224-2224/com.example.book E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.book, PID: 2224
    java.lang.ArrayIndexOutOfBoundsException: length=5; index=5
        at com.example.book.ui.home.Adapter.onBindViewHolder(Adapter.java:38)
        at com.example.book.ui.home.Adapter.onBindViewHolder(Adapter.java:14)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.05.2020, 20:26
Ответы с готовыми решениями:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 9
at wtf.main(wtf.java:23) import java.util.Arrays; import java.util.Scanner; public class wtf { public static void...

Помогите исправить ошибку: java.lang.ArrayIndexOutOfBoundsException
Мне 14,я из Украини так что простите за ошибки .Вот в чем проблема я пол инета облазил и не нашол как ето решить помогите))) ...

Java.lang.ArrayIndexOutOfBoundsException: 4
После отправки потока данных на сервер возникает ошибка java.lang.ArrayIndexOutOfBoundsException: 4. Сама программа- это игра в крестики...

4
1570 / 1168 / 426
Регистрация: 08.05.2012
Сообщений: 5,219
06.05.2020, 20:49
Очевидно, нужно проверить содержимое массивов.
0
0 / 0 / 0
Регистрация: 26.11.2019
Сообщений: 14
06.05.2020, 21:00  [ТС]
Это код для формы где расположен RecyclerView.
lessons_content и lessons_title ниже в скриншоте.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class HomeFragment extends Fragment {
 
    private RecyclerView recyclerView;
    Adapter adapter;
    private HomeViewModel homeViewModel;
 
 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
        View rootView = inflater.inflate(R.layout.fragment_home,null);
        String[] titles = getResources().getStringArray(R.array.lessons_title);
        String[] content =  getResources().getStringArray(R.array.lessons_contents);
        recyclerView = (RecyclerView) rootView.findViewById(R.id.lessonsList);
        recyclerView.setLayoutManager((new LinearLayoutManager(getActivity())));
        recyclerView.setAdapter(new Adapter(getActivity(),titles,content));
        return rootView;
    }
}
Миниатюры
Не знаю как исправить ошибку java.lang.ArrayIndexOutOfBoundsException: length=5; index=5   Не знаю как исправить ошибку java.lang.ArrayIndexOutOfBoundsException: length=5; index=5  
0
1570 / 1168 / 426
Регистрация: 08.05.2012
Сообщений: 5,219
06.05.2020, 21:49
Лучший ответ Сообщение было отмечено kangoshi как решение

Решение

Строковые константы должны быть в файле strings.xml
0
0 / 0 / 0
Регистрация: 26.11.2019
Сообщений: 14
06.05.2020, 23:31  [ТС]
а можно поподробнее описать?) Как я понял, переменные из lesson_title перенести в strings?

Добавлено через 9 минут
Спасибо, я разобрался сам. Количество строковых переменных отличалось в lessons_title и lesssons_content.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.05.2020, 23:31
Помогаю со студенческими работами здесь

Java.lang.ArrayIndexOutOfBoundsException
Заполняю матрицу случайными значениями. Подскажите, пожалуйста, в чём проблема? Выхода за границы массива не вижу=( public class...

Java.lang.ArrayIndexOutOfBoundsException: 0
Вот так всё работает, когда задаёшь вручную размер. import java.util.Scanner; import java.io.*; public class Main { public...

Ошибка java.lang.ArrayIndexOutOfBoundsException
Возникает ошибка на 10 строке java.lang.ArrayIndexOutOfBoundsException при переводе массива в двумерный, ошибка в 1 из 10 случаев...

Ошибка java.lang.ArrayIndexOutOfBoundsException
package glava3; import java.io.*; public class Vector { private int n; private int vector = new int ; public Vector() ...

Ошибка java.lang.ArrayIndexOutOfBoundsException
Задание: вставка в массив другого массива элементов в указанное место В строчке , где написано System.arraycopy(array2,0,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru