Задать вопрос
Местоположение
Беларусь, Минская обл., Минск

Наибольший вклад в теги

Все теги (2)

Лучшие ответы пользователя

Все ответы (1)
  • Android Studio что не так с кодом?

    @anegin
    Android dev
    Нарушена логика в коде.

    Метод foo() почему-то возвращает:
    - или число от 1 до 5, если на любом шаге цикла в random мы получили число меньше 98.
    - или пустой список foo (в случае если random 5 раз оказалось число выше 98).

    Далее в методе onClick() после вызова foo() происходит кастинг к ArrayList.
    Тут приложение и падает (вероятно с ClassCastException), если foo вернула число, а не ArrayList.
    В случае если foo() все таки вернет ArrayList, то приложение все равно упадет при вызове gold.get(0) с ошибкой IndexOotOfBoundException, т.к. список пустой.

    Если я правильно понимаю то, что хотел сделать автор, то нужно в методе foo() все эти return 1, return 2 и т.д. заменить на добавление числа в список.

    if (random < 36) {
    foo.add(1);
    } else if (random < 61) {
    foo.add(2);
    } ... и т.д.
    Ответ написан
    3 комментария