Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
14 Мар 2023
2 мин
409

Инициализация ArrayList в одну строку в Java

Часто при разработке на Java возникает необходимость создания и инициализации списков. Это может быть полезно, например, при создании списка параметров

Часто при разработке на Java возникает необходимость создания и инициализации списков. Это может быть полезно, например, при создании списка параметров для тестирования или списка значений по умолчанию.

Обычным подходом к инициализации списка является создание экземпляра класса ArrayList и последующее добавление в него элементов с помощью метода add(). Исходный код может выглядеть следующим образом:

ArrayList<String> cities = new ArrayList<String>();
cities.add("Moscow");
cities.add("Saint Petersburg");
cities.add("Novosibirsk");

Однако, этот подход может быть неэффективным, особенно когда требуется добавить большое количество элементов. В этом случае предпочтительнее использовать более компактный и удобный способ инициализации списка — с помощью метода Arrays.asList(), который возвращает список, заполненный переданными ему элементами:

ArrayList<String> cities = new ArrayList<String>(
    Arrays.asList("Moscow", "Saint Petersburg", "Novosibirsk"));

Такой подход позволяет инициализировать список в одну строку, что упрощает чтение кода и делает его более наглядным.

Однако стоит помнить, что возвращаемый методом Arrays.asList() список имеет фиксированный размер. Это значит, что добавление или удаление элементов в этом списке вызовет UnsupportedOperationException. Чтобы избежать этого, можно использовать конструктор ArrayList(Collection<? extends E> c), который создает новый список, содержащий все элементы из указанной коллекции:

ArrayList&lt;String&gt; cities = new ArrayList&lt;String&gt;(
    Arrays.asList("Moscow", "Saint Petersburg", "Novosibirsk"));

Таким образом, инициализация ArrayList в одну строку делает код более чистым и легким для чтения, а также позволяет избежать возможных ошибок при работе со списками в Java.

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей

Добавить комментарий