Java ArrayList (con esempi)

In questo tutorial, impareremo a conoscere la classe ArrayList in Java. Impareremo a conoscere diverse operazioni e metodi dell'arraylist con l'aiuto di esempi.

La ArrayListclasse del framework delle collezioni Java fornisce la funzionalità di array ridimensionabili .

Implementa l' Listinterfaccia.

Implementazione di Java ArrayList

Java ArrayList Vs Array

In Java, dobbiamo dichiarare la dimensione di un array prima di poterlo utilizzare. Una volta dichiarata la dimensione di un array, è difficile cambiarla.

Per gestire questo problema, possiamo usare la ArrayListclasse. Ci permette di creare array ridimensionabili.

A differenza degli array, gli array possono regolare automaticamente la sua capacità quando aggiungiamo o rimuoviamo elementi da esso. Pertanto, gli array sono noti anche come array dinamici .

Creazione di un ArrayList

Prima di utilizzare ArrayList, dobbiamo java.util.ArrayListprima importare il pacchetto. Ecco come possiamo creare arraylist in Java:

 ArrayList arrayList= new ArrayList();

Qui, Type indica il tipo di un elenco di array. Per esempio,

 // create Integer type arraylist ArrayList arrayList = new ArrayList(); // create String type arraylist ArrayList arrayList = new ArrayList();

Nel programma sopra, abbiamo usato Integernot int. È perché non possiamo usare tipi primitivi durante la creazione di un elenco di array. Invece, dobbiamo usare le classi wrapper corrispondenti.

Ecco Integerla classe wrapper corrispondente di int. Per saperne di più, visita la classe wrapper Java.

Esempio: creare ArrayList in Java

 import java.util.ArrayList; class Main ( public static void main(String() args)( // create ArrayList ArrayList languages = new ArrayList(); // Add elements to ArrayList languages.add("Java"); languages.add("Python"); languages.add("Swift"); System.out.println("ArrayList: " + languages); ) )

Produzione

 ArrayList: (Java, Python, Swift)

Nell'esempio sopra, abbiamo creato una ArrayListlingua con nome.

Qui abbiamo utilizzato il add()metodo per aggiungere elementi all'arraylist. Impareremo di più sul add()metodo più avanti in questo tutorial.

Nota : possiamo anche creare un elenco di array utilizzando l' Listinterfaccia. È perché la ArrayListclasse implementa l' Listinterfaccia.

 List list = new ArrayList();

Operazioni di base su ArrayList

La ArrayListclasse fornisce vari metodi per eseguire diverse operazioni sugli elenchi di array. In questo tutorial esamineremo alcune operazioni di elenchi di array comunemente utilizzate:

  • Aggiungi elementi
  • Elementi di accesso
  • Cambia elementi
  • Rimuovi elementi

1. Aggiungere elementi a un ArrayList

Per aggiungere un singolo elemento all'arraylist, usiamo il add()metodo della ArrayListclasse. Per esempio,

 import java.util.ArrayList; class Main ( public static void main(String() args)( // create ArrayList ArrayList languages = new ArrayList(); // add() method without the index parameter languages.add("Java"); languages.add("C"); languages.add("Python"); System.out.println("ArrayList: " + languages); // add() method with the index parameter languages.add(1, "JavaScript"); System.out.println("Updated ArrayList: " + languages); ) )

Produzione

 ArrayList: (Java, C, Python) ArrayList aggiornato: (Java, JavaScript, C, Python)

Nell'esempio sopra, abbiamo creato una ArrayListlingua con nome. Qui abbiamo utilizzato il add()metodo per aggiungere elementi alle lingue.

Notare la dichiarazione,

 languages.add(1, "JavaScript");

Qui abbiamo utilizzato il parametro del numero di indice . È un parametro opzionale che specifica la posizione in cui viene aggiunto il nuovo elemento.

Per saperne di più, visita il Java ArrayList add ().

Possiamo anche aggiungere elementi di una raccolta a un elenco di array utilizzando il metodo Java ArrayList addAll ().

2. Accedere a ArrayList Elements

Per accedere a un elemento dall'arraylist, utilizziamo il get()metodo della ArrayListclasse. Per esempio,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList animals = new ArrayList(); // add elements in the arraylist animals.add("Cat"); animals.add("Dog"); animals.add("Cow"); System.out.println("ArrayList: " + animals); // get the element from the arraylist String str = animals.get(1); System.out.print("Element at index 1: " + str); ) )

Produzione

 ArrayList: (Cat, Dog, Cow) Elemento all'indice 1: Dog

Nell'esempio precedente, abbiamo utilizzato il get()metodo con il parametro 1. Qui, il metodo restituisce l'elemento all'indice 1 .

Per saperne di più, visita Java ArrayList get ().

Possiamo anche accedere agli elementi del metodo ArrayListusing iterator(). Per saperne di più, visita Java ArrayList iterator ().

3. Modificare gli elementi di ArrayList

Per cambiare elemento dell'arraylist, usiamo il set()metodo della ArrayListclasse. Per esempio,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList languages = new ArrayList(); // add elements in the array list languages.add("Java"); languages.add("Kotlin"); languages.add("C++"); System.out.println("ArrayList: " + languages); // change the element of the array list languages.set(2, "JavaScript"); System.out.println("Modified ArrayList: " + languages); ) )

Produzione

 ArrayList: (Java, Kotlin, C ++) Modified ArrayList: (Java, Kotlin, JavaScript)

Nell'esempio sopra, abbiamo creato una ArrayListlingua con nome. Notare la linea,

 language.set(2, "JavaScript");

Qui, il set()metodo cambia l'elemento all'indice 2 in JavaScript.

Per saperne di più, visita il Java ArrayList set ().

4. Rimuovere gli elementi ArrayList

Per rimuovere un elemento dall'arraylist, possiamo utilizzare il remove()metodo della ArrayListclasse. Per esempio,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList animals = new ArrayList(); // add elements in the array list animals.add("Dog"); animals.add("Cat"); animals.add("Horse"); System.out.println("ArrayList: " + animals); // aemove element from index 2 String str = animals.remove(2); System.out.println("Updated ArrayList: " + animals); System.out.println("Removed Element: " + str); ) )

Produzione

 ArrayList: (Dog, Cat, Horse) ArrayList aggiornato: (Dog, Cat) Elemento rimosso: Horse

Qui, il remove()metodo accetta il numero di indice come parametro. E rimuove l'elemento specificato dal numero di indice .

Per saperne di più, visita Java ArrayList remove ().

Possiamo anche rimuovere tutti gli elementi dall'arraylist contemporaneamente. Per saperne di più, visita

  • Java ArrayList removeAll ()
  • Java ArrayList clear ()

Metodi della classe ArrayList

Nella sezione precedente, abbiamo imparato a conoscere il add(), get(), set(), e remove()il metodo della ArrayListclasse.

Besides those basic methods, here are some more ArrayList methods that are commonly used.

Methods Descriptions
size() Returns the length of the arraylist.
sort() Sort the arraylist elements.
clone() Creates a new arraylist with the same element, size, and capacity.
contains() Searches the arraylist for the specified element and returns a boolean result.
ensureCapacity() Specifies the total element the arraylist can contain.
isEmpty() Checks if the arraylist is empty.
indexOf() Searches a specified element in an arraylist and returns the index of the element.

If you want to learn about all the different methods of arraylist, visit Java ArrayList methods.

Iterate through an ArrayList

We can use the Java for-each loop to loop through each element of the arraylist. For example,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( // creating an array list ArrayList animals = new ArrayList(); animals.add("Cow"); animals.add("Cat"); animals.add("Dog"); System.out.println("ArrayList: " + animals); // iterate using for-each loop System.out.println("Accessing individual elements: "); for (String language : animals) ( System.out.print(language); System.out.print(", "); ) ) )

Output

 ArrayList: (Cow, Cat, Dog) Accessing individual elements: Cow, Cat, Dog,

ArrayList To Array Conversion

We can convert the ArrayList into an array using the toArray() method. For example,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList languages = new ArrayList(); // add elements in the array list languages.add("Java"); languages.add("Python"); languages.add("C++"); System.out.println("ArrayList: " + languages); // create a new array of String type String() arr = new String(languages.size()); // convert ArrayList into an array languages.toArray(arr); System.out.print("Array: "); // access elements of the array for (String item : arr) ( System.out.print(item + ", "); ) ) )

Output

 ArrayList: (Java, Python, C++) Array: Java, Python, C++, 

In the above example, we have created an arraylist named languages. Notice the statement,

 languages.toArray(arr);

Here, the toArray() method converts the arraylist into an array and stores it in arr. To learn more, visit Java ArrayList toArray().

Java Array to ArrayList Conversion

We can also convert the array into an arraylist. For that, we use the asList() method of the Arrays class.

To use asList(), we must import the java.util.Arrays package first. For example,

 import java.util.ArrayList; import java.util.Arrays; class Main ( public static void main(String() args) ( // create an array of String type String() arr = ( "Java", "Python", "C++" ); System.out.print("Array: "); // print array for (String str : arr) ( System.out.print(str); System.out.print(" "); ) // create an ArrayList from an array ArrayList languages = new ArrayList(Arrays.asList(arr)); System.out.println("ArrayList: " + languages); ) )

Output

 Array: Java Python C++ ArrayList: (Java, Python, C++)

In the above program, we first created an array arr of the String type. Notice the expression,

 Arrays.asList(arr)

In questo caso, il asList()metodo converte l'array in un elenco di array.

Nota : possiamo anche utilizzare il Arrays.asList()metodo per creare e inizializzare l'elenco di array in una singola riga. Per esempio,

  // create and initialize arraylist ArrayList animals = new ArrayList(Arrays.asList("Cat", "Cow", "Dog"));

Conversione da ArrayList a String

Possiamo usare il toString()metodo della ArrayListclasse per convertire un elenco di array in una stringa. Per esempio,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList languages = new ArrayList(); // add elements in the ArrayList languages.add("Java"); languages.add("Python"); languages.add("Kotlin"); System.out.println("ArrayList: " + languages); // convert ArrayList into a String String str = languages.toString(); System.out.println("String: " + str); ) )

Produzione

 ArrayList: (Java, Python, Kotlin) Stringa: (Java, Python, Kotlin)

Qui, il toString()metodo converte l'intero elenco di array in una singola stringa. Per saperne di più, visita Java ArrayList toString ().

Articoli interessanti...