Crea ArrayList da array in Java

Payel Ganguly 12 ottobre 2023
  1. Che cos’è un array in Java?
  2. Che cos’è ArrayList in Java?
  3. Differenza tra array e ArrayList in Java
  4. Conversione di un array in ArrayList utilizzando Arrays.asList()
  5. Conversione di un array in ArrayList utilizzando Collections.addAll()
  6. Conversione di un array in ArrayList utilizzando add()
Crea ArrayList da array in Java

Questo articolo tutorial introdurrà diversi modi per creare ArrayList da array in Java. Ci sono tre diversi metodi per convertire un array in ArrayList in Java come Arrays.asList(), Collections.addAll() e add().

Prima di procedere con la dimostrazione, capiamo cosa sono un array e un ArrayList e come differiscono tra loro.

Che cos’è un array in Java?

Un array è una raccolta di un numero fisso di tipi di dati simili. Ad esempio, se vogliamo memorizzare i dati di 50 libri, possiamo creare un array del tipo stringa che può contenere 50 libri. Dopo la creazione, la lunghezza dell’array viene fissata. Un array è la funzionalità incorporata di base di Java.

String[] array = new String[50];

Che cos’è ArrayList in Java?

L’ArrayList è un array ridimensionabile che memorizza una raccolta dinamica di elementi trovati all’interno del pacchetto java.util.

Differenza tra array e ArrayList in Java

La differenza principale tra un array e ArrayList è che la lunghezza di un array non può essere modificata o estesa. Per aggiungere o rimuovere elementi a/da un array, dobbiamo creare un nuovo lista. Considerando che, gli elementi possono essere aggiunti o rimossi a/da ArrayList in qualsiasi momento a causa della sua natura ridimensionabile.

Conversione di un array in ArrayList utilizzando Arrays.asList()

Usando Arrays.asList(), l’array viene passato a questo metodo e si ottiene un oggetto list, che viene nuovamente passato al costruttore della classe ArrayList come parametro. La sintassi di Arrays.asList() è la seguente:

ArrayList<T> arraylist = new ArrayList<T>(Arrays.asList(arrayname));

Seguiamo l’esempio seguente.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class Method1 {
  public static void main(String[] args) {
    String[] subjects = {"maths", "english", "history", "physics"};
    ArrayList<String> sublist = new ArrayList<String>(Arrays.asList(subjects));
    sublist.add("geography");
    sublist.add("chemistry");

    for (String str : sublist) {
      System.out.println(str);
    }
  }
}

Produzione:

maths
english
history
physics
geography
chemistry

Conversione di un array in ArrayList utilizzando Collections.addAll()

Questo metodo elenca tutti gli elementi dell’array in una raccolta definita quasi simile a Arrays.asList(). Tuttavia, Collections.addAll() è molto più veloce rispetto al metodo Arrays.asList() sulla base delle prestazioni. La sintassi di Collections.addAll() è la seguente:

Collections.addAll(arraylist, new Element(1), new Element(2), new Element(3), new Element(4));

Cerchiamo di capire l’esempio seguente.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class Method2 {
  public static void main(String[] args) {
    String[] names = {"john", "emma", "rick", "tim"};
    ArrayList<String> namelist = new ArrayList<String>();
    Collections.addAll(namelist, names);
    namelist.add("jenny");
    namelist.add("rob");

    for (String str : namelist) {
      System.out.println(str);
    }
  }
}

Produzione:

john
emma
rick
tim
jenny
rob

Conversione di un array in ArrayList utilizzando add()

Usando questo metodo, possiamo creare un nuovo lista e aggiungere gli elementi dell’lista in un modo molto più semplice. La sintassi per il metodo add() è la seguente:

arraylist.add(element);

Controlliamo l’esempio seguente.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class Method3 {
  public static void main(String[] args) {
    ArrayList<String> planetlist = new ArrayList<String>();
    String[] planets = {"earth", "mars", "venus", "jupiter"};
    for (int i = 0; i < planets.length; i++) {
      planetlist.add(planets[i]);
    }
    for (String str : planetlist) {
      System.out.println(str);
    }
  }
}

Produzione:

earth
mars
venus
jupiter

Seguendo i metodi di cui sopra, ora possiamo convertire facilmente un array in ArrayList.

Articolo correlato - Java Array

Articolo correlato - Java ArrayList