ArrayList

Усвоив, что такое массивы, можно поближе изучить java.util.ArrayList.

ArrayList - автоматически расширяемый массив. Вы можете работать с массивом, но при этом не используются квадратные скобки.

Массивы имеют фиксированную длину, и после того как массив создан, он не может расти или уменьшаться. ArrayList может менять свой размер во время исполнения программы, при этом не обязательно указывать размерность при создании объекта. Элементы ArrayList могут быть абсолютно любых типов в том числе и null.

Работать с ArrayList просто: создайте нужный объект, вставляйте созданные объекты методом add(), обращайтесь к ним методом get(), используйте индексирование так же, как для массивов, но без квадратных скобок. ArrayList также содержит метод size(), который возвращает текущее количество элементов в массиве.

Пример:

ArrayList<String> catnamesList = new ArrayList<String>();
catnamesList.add("Васька");
editResult.setText((CharSequence) catnamesList.get(0));

Метод size(), который возвращает общее число элементов массива. В этом случае, чтобы получить имя последнего кота в массиве, нужно получить размер массива и отнять единицу.

Пример:

editResult.setText((CharSequence) catnamesList.get(catnamesList.size() - 1));

Существует метод indexOf(), который ищет подходящий элемент и выводит его индекс

Пример:

int index = catnamesList.indexOf("Рыжик");

// выводим имя кота и его номер в массиве

editResult.setText("Рыжик числится под номером " + index);

Просмотр всех элементов через цикл

Пример:

String catname = "";
for (int i = 0; i < catnamesList.size(); i++) {
    catname = catname + catnamesList.get(i) + " ";
}
editResult.setText("Все коты: " + catname);

Вопрос 1.

Чем принципиально отличаются коллекции, в частности и ArrayList, от массива?

Вопрос 2.

Напишите программу, взяв за основу код из примера выше, которая будет выводить в консоль поочередно имена всех котов с их индексами в ArrayList (для вывода используйте цикл)

Last updated