Page Index
Related Content
Collezioni (collections)
• Le collezioni in Java sono rese disponibili mediante il framework delle collezioni (Java Collection Framework) • Strutture dati già pronte all’uso – con interfacce e algoritmi per manipolarle • Contengono e “strutturano” riferimenti ad altri oggetti – Tipicamente tutti “dello stesso tipo” • Alcune interfacce del framework:
List
ArrayList
Metodi
- add
- get
- set
- remove
LinkedList
Stessi metodi +
List Iterator
Insiemi
- Basati sull’interfaccia Set
- Elementi tutti distinti (no ripetizioni) oss: si usa equals per determinare l’uguaglianza
- Le classi insiemi
HashSet
,TreeSet
eLinkedHashSet
estendonoAbstarctSet
e implementano l’interfacciaSet
HashSet
- memorizza gli elementi in una tabella di hash
- oss: se stampo non si ha nessun ordinamento
TreeSet:
- memorizza gli elementi in un albero (heap) mantenendo un ordine sugli elementi
- oss: Se stampo ho un ordine dal più piccolo al più grande
LinkedHashSet:
- memorizza gli elementi in ordine di inserimento
- oss: se stampo non si ha nessun ordinamento
Mappe
• Una mappa mette in corrispondenza chiavi e valori • Non può contenere chiavi duplicate • java.util.Map è un’interfaccia implementata da HashMap, TreeMap e LinkedHashMap
HashMap:
- memorizza le coppie in una tabella di hash
TreeMap:
- memorizza le coppie in un albero mantenendo un ordine sulle chiavi
LinkedHashMap:
- estende HashMap e mantiene l’ordinamento di iterazione secondo gli inserimenti effettuati
Metodi interfaccia Map
…
java.util.Map
Metodi
forEach(BiConsumer) – Itera su ciascuna coppia (chiave, valore)
getOrDefault(chiave, valoreDefault) – Restituisce il valore associato alla chiave o valoreDefault se la chiave non è presente
merge(chiave, valore, BiFunction) – Se la chiave non contiene già un valore, imposta il valore specificato, altrimenti chiama una bifunzione che decide come mettere insieme il valore precedente con il valore passato in input
of(chiave, valore, chiave, valore, …, chiave, valore) – statico, crea una mappa immutabile dei tipi e con i valori corrispondenti
java.util.Collections
Metodi
java.util.Arrays
Metodi