Junior
Cos'è ArrayList?
sobes.tech AI
Risposta dell'AI
ArrayList — è un array dinamico in Java, implementato su un array normale.
Caratteristiche principali:
- Dimensione dinamica: può crescere o ridursi man mano che vengono aggiunti o rimossi elementi.
- Accesso indicizzato: gli elementi sono accessibili tramite il loro indice (a partire da 0).
- Ordine degli elementi: mantiene l'ordine di inserimento.
- Non è sicuro per i thread: non sincronizzato, per scenari multi-thread si usa
VectoroCollections.synchronizedList. - Prestazioni:
- Aggiunta/rimozione alla fine O(1) in media (tempo ammortizzato).
- Aggiunta/rimozione nel mezzo O(n) (è necessario spostare gli elementi).
- Accesso tramite indice O(1).
- Ricerca di un elemento O(n).
Esempio di utilizzo:
import java.util.ArrayList;
// Creazione di ArrayList
ArrayList<String> nomi = new ArrayList<>();
// Aggiunta di elementi
nomi.add("Alice");
nomi.add("Bob");
nomi.add("Charlie");
// Accesso a un elemento tramite indice
String primoElemento = nomi.get(0); // "Alice"
// Dimensione dell'ArrayList
int dimensione = nomi.size(); // 3
// Rimozione di un elemento
nomi.remove("Bob"); // Rimuove la prima occorrenza di "Bob"
nomi.remove(0); // Rimuove l'elemento all'indice 0 (ora "Charlie")
// Iterare sugli elementi
for (String nome : nomi) {
System.out.println(nome);
}