logo

ArrayList в Java

ArrayList в Java е a с възможност за промяна на размера (или динамичен) масив от пакет java.util които могат да растат или да се свиват автоматично, когато елементите се добавят или премахват, за разлика от обикновените масиви с фиксиран размер.

следващ java скенер
  • Индексиран достъп: Елементите могат да бъдат достъпни чрез техния индекс точно както масивите.
  • Позволява дубликати: Допускат се дублиращи се елементи.
  • Поддържа поръчка за вмъкване: Елементите се съхраняват в реда, в който са вмъкнати.
  • Не е синхронизирано: По подразбиране ArrayList не е безопасен за нишки (необходима е ръчна синхронизация за паралелен достъп).
Java
import java.util.ArrayList; class Main {  public static void main (String[] args) {    // Creating an ArrayList  ArrayList<Integer> a = new ArrayList<Integer>();    // Adding Element in ArrayList  a.add(1);  a.add(2);  a.add(3);    // Printing ArrayList  System.out.println(a);  } } 

Изход
[1 2 3] 

Йерархия на ArrayList

Той изпълнява Списък интерфейс който е подинтерфейс на Интерфейс за събиране .



ArrayList_Java-768' title=

Конструктори ArrayList в Java

Java предоставя множество конструктори за създаване на ArrayList въз основа на различни изисквания:

1. ArrayList()

Създава празен ArrayList с начален капацитет по подразбиране.

ArrayList arr = нов ArrayList<>();



2. ArrayList arr = нов ArrayList<>()

Създава ArrayList, инициализиран с елементи от посочената колекция.

ArrayListarr = нов ArrayList<>(колекция);

3. ArrayList(int initialCapacity)

Този конструктор се използва за изграждане на списък с масиви със зададен начален капацитет.



ArrayListarr = нов ArrayList<>(20);

Операции на ArrayList

Сега с помощта на конструкторите имаме ArrayList за по-нататъшни операции като InsertionDeletion и Updation на елементите в ArrayList.

Java
import java.util.*; class GFG{    public static void main(String args[]){    // Creating an Array of string type  ArrayList<String> al = new ArrayList<>();  // 1. Adding elements to ArrayList at the end  al.add('Geeks');  al.add('Geeks');  System.out.println('Original List : '+al);    // Adding Elements at the specific index  al.add(1 'For');  System.out.println('After Adding element at index 1 : '+ al);    // 2. Removing Element using index  al.remove(0);    System.out.println('Element removed from index 0 : '+ al);    // Removing Element using the value  al.remove('Geeks');    System.out.println('Element Geeks removed : '+ al);    // 3. Updating value at index 0  al.set(0 'GFG');    System.out.println('List after updation of value : '+al);  } } 

Изход
Original List : [Geeks Geeks] After Adding element at index 1 : [Geeks For Geeks] Element removed from index 0 : [For Geeks] Element Geeks removed : [For] List after updation of value : [GFG] 

Сложност на Java ArrayList

Операция

Времева сложност

Космическа сложност

Вмъкване на елемент в ArrayList

О(1)

O(N)

Премахване на елемент от ArrayList

O(N)

О(1)

Обхождане на елементи в ArrayList

O(N)

O(N)

Замяна на елементи в ArrayList

О(1)

О(1)

Методи на Java ArrayList

МетодОписание
add(int index Обектен елемент) Този метод се използва за вмъкване на конкретен елемент в определен индекс на позиция в списък.
добавяне (обект o) Този метод се използва за добавяне на конкретен елемент в края на списък.
addAll(Колекция C) Този метод се използва за добавяне на всички елементи от конкретна колекция в края на споменатия списък в такъв ред, че стойностите да се връщат от итератора на определената колекция.
addAll(int index Collection C) Използва се за вмъкване на всички елементи, започващи от посочената позиция, от конкретна колекция в споменатия списък.
ясно() Този метод се използва за премахване на всички елементи от всеки списък.
клонинг() Този метод се използва за връщане на плитко копие на ArrayList в Java.
съдържа (обект o) Връща true, ако този списък съдържа посочения елемент.
secureCapacity(int minCapacity) Увеличава капацитета на този екземпляр на ArrayList, ако е необходимо, за да се гарантира, че може да съдържа поне броя елементи, посочени от аргумента за минимален капацитет.
forEach(Потребителдействие) Извършва даденото действие за всеки елемент от Iterable, докато всички елементи бъдат обработени или действието хвърли изключение.
get(int индекс) Връща елемента на посочената позиция в този списък.
indexOf(обект O) Индексът на първото появяване на конкретен елемент или се връща, или -1 в случай, че елементът не е в списъка.
isEmpty() Връща true, ако този списък не съдържа елементи.
lastIndexOf(обект O) Индексът на последното срещане на конкретен елемент се връща или -1 в случай, че елементът не е в списъка.
listIterator() Връща итератор на списък върху елементите в този списък (в правилна последователност).
listIterator(int индекс) Връща итератор на списък върху елементите в този списък (в правилна последователност), започвайки от указаната позиция в списъка.
премахване (индекс) Премахва елемента на посочената позиция в този списък.
премахване (обект o) Премахва първото срещане на посочения елемент от този списък, ако присъства.
removeAll(Колекция c) Премахва от този списък всички негови елементи, които се съдържат в указаната колекция.
removeIf (филтър на предикат) Премахва всички елементи от тази колекция, които отговарят на дадения предикат.
removeRange(int fromIndex int toIndex) Премахва от този списък всички елементи, чийто индекс е между от индекс включително и до индекс изключителен.
retainAll(Колекцияв) Запазва само елементите в този списък, които се съдържат в указаната колекция.
set(int index E елемент) Заменя елемента на посочената позиция в този списък с посочения елемент.
размер () Връща броя на елементите в този списък.
сплитератор() Създава късно свързващ и бърз Spliterator върху елементите в този списък.
subList(int fromIndex int toIndex) Връща изглед на частта от този списък между посочения fromIndex включително и toIndex изключителен.
toArray() Този метод се използва за връщане на масив, съдържащ всички елементи в списъка в правилния ред.
toArray(Object[] O) Използва се и за връщане на масив, съдържащ всички елементи в този списък в правилния ред, същият като предишния метод.
trimToSize() Този метод се използва за намаляване на капацитета на екземпляра на ArrayList до текущия размер на списъка.