Junior
Cos'è un Set in Java?
sobes.tech AI
Risposta dell'AI
Set in Java è una collezione di elementi unici che non garantisce l'ordine di memorizzazione.
Caratteristiche principali:
- Unicità: Non può contenere duplicati. Se si tenta di aggiungere un elemento esistente, l'operazione sarà ignorata (a seconda dell'implementazione).
- Mancanza di indicizzazione: Gli elementi non sono accessibili tramite indice.
- Interfaccia: Fa parte del Java Collections Framework e estende l'interfaccia
Collection.
Implementazioni più comunemente usate:
HashSet: L'implementazione più veloce, basata su una tabella hash. Non garantisce l'ordine degli elementi.LinkedHashSet: Mantiene l'ordine di inserimento degli elementi, usando una lista collegata oltre alla tabella hash.TreeSet: Memorizza gli elementi in ordine ordinato (naturale o tramite un comparatore definito), basato su un albero rosso-nero.
Esempio di utilizzo di HashSet:
// Creazione di HashSet
Set<String> nomiUnici = new HashSet<>();
// Aggiunta di elementi
nomiUnici.add("Alice");
nomiUnici.add("Bob");
nomiUnici.add("Alice"); // Questo elemento sarà ignorato
nomiUnici.add("Charlie");
// Verifica della presenza di un elemento
boolean contieneBob = nomiUnici.contains("Bob"); // true
// Iterazione sugli elementi (l'ordine non è garantito)
for (String nome : nomiUnici) {
System.out.println(nome);
}
// Dimensione del Set
int dimensione = nomiUnici.size(); // 3