Как использовать Java ArrayList

Как использовать Java ArrayList

На Java ArrayList - это универсальный массив с изменяемым размером. Он предоставляет большинство возможностей, обычно ожидаемых от массивов на других языках. К ним относятся: доступ к элементам с использованием индекса, добавление, удаление и обновление элементов, динамическое изменение размера, итерация по элементам и т. Д. Большинство этих операций были специально настроены для использования в общих целях.





что такое зона ar на самсунг

Есть еще несколько типов «массивов» (классов, реализующих Список интерфейс, чтобы быть техническим), которые предназначены для специальных целей. Это включает:





  • LinkedList поддерживает быструю вставку и удаление промежуточных индексов.
  • Вектор похож на ArrayList но синхронизирован и подходит вместо ArrayList для многопоточных приложений.
  • Куча поддерживает операции для имитации списка «последним вошел - первым ушел». Это расширяет Вектор и, следовательно, синхронизирован.

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





Создание ArrayList

Создание ArrayList это просто. Пустой ArrayList можно создать с помощью конструктора без аргументов. Здесь мы создаем пустой массив для хранения строк.

ArrayList alist = new ArrayList();

Если вы знаете, сколько элементов будет содержать ваш список массивов, вы можете указать начальную емкость. Эта начальная емкость - всего лишь подсказка для распределения памяти - arrayylist не ограничен хранением указанного количества элементов. Если вы знаете и указываете начальную емкость, вы мог бы получить небольшое улучшение производительности.



ArrayList alist = new ArrayList(20);

Заполнение ArrayList

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

Заполнить аррайлиста довольно просто. Просто используйте Добавить() , чтобы добавить один элемент в конец arrayylist. Вот пример:

ArrayList alist = new ArrayList();
alist.add('apple');
alist.add('banana');
alist.add('cantaloupe');
alist.add('orange');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, orange]

Чтобы узнать, сколько элементов находится в Arraylist, используйте метод размер() .





System.out.println('Number of elements in the arraylist: ' + alist.size());
# prints
Number of elements in the arraylist: 4

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

Хотите добавить элемент с произвольным индексом? Укажите индекс в качестве первого аргумента, и элемент будет добавлен по этому индексу:

alist.add(3, 'grapes');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange]

Добавление группы элементов

Вы также можете добавлять элементы из любой коллекции в иерархию коллекций Java. An ArrayList это особый тип, называемый Список . Вот способ построить Список из кучи предметов (используя Arrays.asList () ) и добавьте его в ArrayList .





List items = Arrays.asList('pear', 'cherry');
alist.addAll(items);
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange, pear, cherry]

Конечно, вы можете указать здесь индекс в качестве первого аргумента, чтобы добавить элементы, начинающиеся с этого индекса.

Доступ к элементам

Как мы сможем снова получить к ним доступ после того, как элементы будут добавлены в Arraylist?

Доступ с помощью индекса

Если вы знаете индекс элемента, вы можете использовать получать() для получения элемента по этому индексу.

как написать профессиональный отчет
String item = alist.get(2);
System.out.println('Item at index 2 is: ' + item);
# prints
Item at index 2 is: cantaloupe

Нахождение предметов

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

System.out.println(alist);
int index = alist.indexOf('orange');
if ( index <0 )
System.out.println('Item 'orange' not found');
else
System.out.println('Item 'orange' found at index ' + index);
# prints
[apple, banana, cantaloupe, grapes, orange, pear, cherry]
Item 'orange' found at index 4

Что делать, если этого элемента нет в аррайлисте? В индекс() метод возвращает -1, если элемент не найден.

index = alist.indexOf('grape');
if ( index <0 )
System.out.println('Item 'grape' not found');
else
System.out.println('Item 'grape' found at index ' + index);
# prints
Item 'grape' not found

Итерация по списку ArrayList

Конечно, наиболее распространенное использование ArrayList перебирает элементы. Это можно сделать несколькими способами. Здесь мы покажем несколько простых.

Вот простейший способ перебора массивов и извлечения элементов для некоторой обработки.

for (String fruit : alist) {
System.out.println('Found fruit '' + fruit + ''');
}
# prints
Found fruit 'apple'
Found fruit 'banana'
Found fruit 'cantaloupe'
Found fruit 'grapes'
Found fruit 'orange'
Found fruit 'pear'
Found fruit 'cherry'

Этот код использует Java Enhanced For-Loop, который был представлен в Java 1.5. До этого вы могли перебирать элементы с помощью итератора. Итератор также используется, когда вам нужно Удалить элементы в процессе итерации, как показано в примере ниже. (Обратите внимание, что мы делаем копию arraylist и работаем над копией.)

ArrayList blist = new ArrayList(alist);
for (Iterator iter = blist.iterator() ; iter.hasNext() ; ) {
String fruit = iter.next();
if ( fruit.startsWith('c') )
iter.remove();
else
System.out.println('Keeping '' + fruit + ''');
}
# prints
Keeping 'apple'
Keeping 'banana'
Keeping 'grapes'
Keeping 'orange'
Keeping 'pear'

Замена предметов

После добавления элементов нам нужен способ заменить ненужные элементы. Это можно сделать, используя установленный() метод с индексом.

alist.set(5, 'pineapple');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange, pineapple, cherry]

Удаление предметов

Давайте теперь посмотрим, как мы можем удалить элементы из массива. Если вы знаете индекс элемента (возможно, вы использовали индекс() описано выше), вы можете использовать Удалить() метод с индексом. Возвращает удаленный элемент.

String fruit = alist.remove(2);
System.out.println('Removed element at 2: ' + fruit);
# prints
Removed element at 2: cantaloupe

Вы также можете указать элемент для удаления первый появление элемента в списке. Метод возвращает правда если элемент был найден и удален.

сколько интернета использует YouTube
fruit = 'grapes';
System.out.println('Remove ' +fruit+ ' from the list? ' + alist.remove(fruit));
# prints
Remove grapes from the list? true

Как вы используете ArrayList в ваших проектах и ​​с какими проблемами вы столкнулись? Пожалуйста, дайте нам знать в комментариях ниже.

Делиться Делиться Твитнуть Эл. адрес Как получить доступ к встроенному пузырьковому уровню Google на Android

Если вам когда-либо нужно было убедиться, что что-то выровнено в крайнем случае, теперь вы можете получить пузырьковый уровень на своем телефоне за секунды.

Читать далее
Похожие темы
  • Программирование
  • Джава
Об авторе Джей Шридхар(Опубликовано 17 статей) Ещё от Jay Sridhar

Подписывайтесь на нашу новостную рассылку

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Нажмите здесь, чтобы подписаться