Junior
Cos'è ArrayList?
sobes.tech AI
Risposta dell'AI
ArrayList è un array dinamico in Java che fa parte del Framework delle Collezioni. Implementa l'interfaccia List.
Caratteristiche principali:
- Dimensione modificabile: La dimensione di
ArrayListpuò aumentare o diminuire dinamicamente man mano che si aggiungono o rimuovono elementi. - Accesso tramite indice: Gli elementi sono memorizzati in ordine di inserimento e sono accessibili tramite un indice intero, a partire da 0.
- Permette null: Può contenere elementi
null. - Permette duplicati: Può contenere elementi ripetuti.
- Non sincronizzato: Per impostazione predefinita non è sicuro per i thread. Per una versione thread-safe si può usare
Collections.synchronizedList(new ArrayList<...>()). - Ricerca: È efficiente per operazioni di ricerca di elementi per indice (O(1)).
- Inserimento/Eliminazione: Le operazioni di inserimento e rimozione possono essere lente (O(n)), specialmente all'inizio o nel mezzo della lista, poiché potrebbe essere necessario spostare tutti gli elementi successivi.
Esempio di creazione:
// Esempio di creazione di ArrayList di stringhe
ArrayList<String> nomi = new ArrayList<>();
Metodi principali:
| Metodo | Descrizione |
|---|---|
add(E e) |
Aggiunge un elemento alla fine della lista |
add(int index, E element) |
Inserisce un elemento all'indice specificato |
get(int index) |
Restituisce l'elemento all'indice specificato |
remove(int index) |
Rimuove l'elemento all'indice specificato |
size() |
Restituisce il numero di elementi |
isEmpty() |
Verifica se la lista è vuota |
contains(Object o) |
Verifica se l'elemento è presente |
clear() |
Rimuove tutti gli elementi |