Utilizzo di ArrayList in Java

Le matrici standard in Java sono fisse nel numero di elementi che possono avere. Se si desidera aumentare o diminuire gli elementi in un array, è necessario creare un nuovo array con il numero corretto di elementi dal contenuto dell'array originale. Un'alternativa è usare il Lista di array classe. Il Lista di array class fornisce i mezzi per creare array dinamici (ad esempio, la loro lunghezza può aumentare e diminuire).

Dichiarazione di importazione

import java.util.ArrayList;

Crea una ArrayList

Un Lista di array può essere creato usando il semplice costruttore:

ArrayList dynamicArray = new ArrayList ();

Questo creerà un Lista di array con una capacità iniziale di dieci elementi. Se un più grande (o più piccolo) Lista di array è richiesta la capacità iniziale può essere passata al costruttore. Per fare spazio a venti elementi:

ArrayList dynamicArray = new ArrayList (20);

Popolamento dell'ArrayList

Utilizzare il metodo add per aggiungere un valore a Lista di array:

dynamicArray.add (10); dynamicArray.add (12); dynamicArray.add (20);

Nota: Il Lista di array memorizza solo gli oggetti, anche se le righe precedenti sembrano aggiungere valori int a Lista di array vengono automaticamente cambiati in Numero intero oggetti man mano che vengono aggiunti a Lista di array.

Un array standard può essere utilizzato per popolare un Lista di array convertendolo in una raccolta Elenco utilizzando il metodo Arrays.asList e aggiungendolo a Lista di array usando il Aggiungi tutto metodo:

String [] names = "Bob", "George", "Henry", "Declan", "Peter", "Steven"; ArrayList dynamicStringArray = new ArrayList (20); dynamicStringArray.addAll (Arrays.asList (nomi));

Una cosa da notare Lista di array è che gli elementi non devono essere dello stesso tipo di oggetto. Anche se il dynamicStringArray è stato popolato da oggetti String, può ancora accettare valori numerici:

dynamicStringArray.add (456);

Per ridurre al minimo la possibilità di errori, è meglio specificare il tipo di oggetti che si desidera Lista di array contenere. Questo può essere fatto in fase di creazione usando generici:

ArrayList dynamicStringArray = new ArrayList (20);