Страницы

Поиск по вопросам

понедельник, 10 февраля 2020 г.

Вызов ArrayList из другого метода

#java #android


Добрый вечер!

Подскажите пожалуйста, как обратиться из метода Onclick(...) к ArrayList, который
был создан в методе OnCreate(...)? 

Пока сделал так:

OnCreate(...):

ArrayList Arrayl = new ArrayList<>();
for (int a = 1; a < 8; a++) {
    Arrayl.add(a);
}
Collections.shuffle(Arrayl);// перемешиваем


в Onclick(...):

int actvopros= Arrayl.get(0); //и такое обращение не работает

    


Ответы

Ответ 1



Скорее всего Ваша проблема заключается в том, что коллекцию Arrayl Вы объявляете как локальную переменную метода OnCreate(...), которая вне этого метода видна не будет. Для того, чтобы получить доступ к этой переменной из других методов (этого же класса), коллекцию Arrayl нужно объявить как поле класса: public class MainActivity extends AppCompatActivity { private ArrayList Arrayl; @Override protected void onCreate(Bundle savedInstanceState) { Arrayl = new ArrayList<>(); for (int a = 1; a < 8; a++) { Arrayl.add(a); } Collections.shuffle(Arrayl); } }

Ответ 2



Объявляй вне методов, инициализируй в OnCreate и используй где хочешь. class A { private ArrayList Arrayl; ... OnCreate { ... Array1 = new ArrayList<>() .... } void B { Array1 будет видно. } } Вот так.

Комментариев нет:

Отправить комментарий