Определение размера ArrayList в Java: метод size()

Пройдите тест, узнайте какой профессии подходите и получите бесплатную карьерную консультацию
В конце подарим скидку до 55% на обучение
Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Быстрый и практичный ответ

Для определения количества элементов в ArrayList, необходимо использовать метод .size():

Java
Скопировать код
ArrayList<String> list = new ArrayList<>(Arrays.asList("Яблоко", "Банан"));
System.out.println("Размер: " + list.size()); // Вывод: 2, так как в списке два элемента.

Метод .size() возвращает количество элементов в ArrayList, аналогично свойству длина стандартных массивов.

Пройдите тест и узнайте подходит ли вам сфера IT
Пройти тест

Работа с динамическим размером ArrayList

ArrayList способен динамически менять свой размер, что не свойственно обычным массивам.

Добавление элементов в список

При добавлении нового элемента с помощью list.add(element) размер ArrayList увеличивается:

Java
Скопировать код
list.add("Вишня");
System.out.println("Текущий размер: " + list.size()); // Вывод: "Текущий размер: 3". Вишня добавлена.

Удаление элементов из списка

При удалении элемента с помощью list.remove(element) или list.remove(index) размер списка уменьшается:

Java
Скопировать код
list.remove("Банан");
System.out.println("Размер после удаления элемента 'Банан': " + list.size()); // Вывод: 2. Удалён элемент "Банан".

Визуализация

Попробуем визуализировать далину ArrayList как подсчёт пассажиров в составе поезда:

Markdown
Скопировать код
ArrayList<Passenger> train = new ArrayList<>();

Здесь каждый вагон (🚃) соответствует одному элементу:

Markdown
Скопировать код
Поезд: 🚃🚃🚃🚃🚃

Определение длины списка аналогично вызову метода size():

Java
Скопировать код
int passengers = train.size();
Markdown
Скопировать код
Длина поезда: 5 вагонов 🚃🚃🚃🚃🚃
Количество пассажиров: 5

Таким образом, количество вагонов (элементов в ArrayList) совпадает с количеством пассажиров (размером ArrayList).

Избежание распространенных ошибок

Путаница между size и length

Характерная ошибка Java-разработчиков — использование .length вместо .size() при работе с ArrayList:

Java
Скопировать код
// Неправильно!
int size = myList.length; // Приведёт к ошибке компиляции.

// Правильно!
int size = myList.size(); // Верно!

Берегитесь параллельных изменений

ConcurrentModificationException может возникнуть при попытке изменить ArrayList во время его итерации:

Java
Скопировать код
for (String fruit : list) {
    if (fruit.equals("Вишня")) { 
        list.remove(fruit); // Не верно, возможно возникновение ConcurrentModificationException.
    }
}

Для безопасного изменения списка используйте стандартный for-цикл или метод .remove() у объекта Iterator:

Java
Скопировать код
for (int i = 0; i < list.size(); i++) { 
    if (list.get(i).equals("Вишня")) {
        list.remove(i);
        i--; // Скорректируйте индекс после удаления.
    }
}

Полезные материалы

  1. ArrayList (Java Platform SE 8) — официальная Java-документация метода ArrayList.size().
  2. Метод size() класса ArrayList в Java с примерами – GeeksforGeeks — наглядные примеры использования метода size() с ArrayList.
  3. Учебный курс: Collections (The Java™ Tutorials) — подробное руководство по коллекциям Java от Oracle.
  4. Использование списков и карт (Collections) в Java – Учебник — руководство по работе со списками и картами в Java Collections.
  5. Учебник | DigitalOcean — пошаговое руководство по использованию ArrayList в Java.

Завершение

Упорная практика ведет к совершенству, так же как постоянные попытки чётко произнести 'supercalifragilisticexpialidocious'. Если статья была полезной – поставьте ей лайк. Не стоит останавливаться на достигнутом в программировании! Желаю успехов в обучении!