1. Elenco dei metodi
Ricordi che i creatori di Java hanno scritto un'intera classe helper chiamata Arrays
per nostra comodità quando lavoriamo con gli array?
Hanno fatto la stessa cosa per le collezioni. Java ha una java.util.Collections
classe che ha molti metodi utili per lavorare con le raccolte. Ecco solo i più interessanti:
Metodi | Descrizione |
---|---|
|
Aggiunge gli elementi e1 , e2 , e3 , ... alla colls raccolta |
|
Sostituisce tutti gli elementi nell'elenco passato conobj |
|
Restituisce un elenco di copie n dell'oggettoobj |
|
Sostituisce tutte le istanze di oldVal con newVal nell'elencolist |
|
Copia tutti gli elementi dall'elenco src all'elencodest |
|
Inverte l'elenco. |
|
Ordina l'elenco in ordine crescente |
|
Sposta ciclicamente gli elementi dell'elenco list per n elementi |
|
Mescola casualmente gli elementi nell'elenco |
|
Trova l'elemento minimo nella colls raccolta |
|
Trova l'elemento massimo nella colls raccolta |
|
Determina quante volte l' obj elemento si verifica nella colls raccolta |
|
Cerca key in un elenco ordinato e restituisce l'indice corrispondente. |
|
Restituisce true se le raccolte non hanno elementi in comune |
Molti di questi metodi non usano le classi ArrayList
, HashSet
e HashMap
di per sé, ma con le interfacce corrispondenti: Collection<T>
, List<T>
, Map<K, V>
.
Questo non è un problema: se un metodo accetta un List<T>
, puoi sempre passargli un ArrayList<Integer>
, ma l'operatore di assegnamento non funziona nella direzione opposta.
2. Creazione e modifica di collezioni
Collections.addAll(Collection<T> colls, T e1, T e2, T e3, ...)
metodo
Il addAll()
metodo aggiunge gli elementi e1
, e2
, e3
, ... alla colls
raccolta È possibile passare qualsiasi numero di elementi.
Codice | Uscita console |
---|---|
|
|
Collections.fill(List<T> list, T obj)
metodo
Il fill()
metodo sostituisce tutti gli elementi della list
raccolta con l' obj
elemento.
Codice | Uscita console |
---|---|
|
|
Collections.nCopies(int n, T obj)
metodo
Il nCopies()
metodo restituisce un elenco di n
copie dell'elemento obj
. Si noti che l'elenco restituito è immutabile, il che significa che non è possibile modificarlo! Puoi usarlo solo per leggere i valori:
Codice | Descrizione |
---|---|
|
Crea un elenco immutabile di 5 Hello stringhe Crea un mutabile list e riempilo con i valori dell'elenco immutableList . Uscita console:
|
Collections.replaceAll (List<T> list, T oldValue, T newValue)
metodo
Il replaceAll()
metodo sostituisce tutti gli elementi nella list
raccolta uguale a oldValue
con newValue
.
Codice | Uscita console |
---|---|
|
|
Collections.copy (List<T> dest, List<T> src)
metodo
Il copy()
metodo copia tutti gli elementi della src
raccolta nella dest
raccolta.
Se la dest
raccolta inizia più a lungo della src
raccolta, gli elementi rimanenti della dest
raccolta rimarranno intatti.
dest
collezione deve essere lunga almeno quanto la src
collezione (altrimenti, IndexOutOfBoundsException
verrà lanciata una).
Codice | Uscita console |
---|---|
|
|
3. Ordine degli elementi
Collections.reverse(List<T> list)
metodo
Il reverse()
metodo inverte l'ordine degli elementi dell'elenco passato.
Codice | Uscita console |
---|---|
|
|
Collections.sort(List<T> list)
metodo
Il sort()
metodo ordina l'elenco passato in ordine crescente.
Codice | Uscita console |
---|---|
|
|
Collections.rotate(List<T> list, int distance)
metodo
Il rotate()
metodo sposta ciclicamente gli elementi dell'elenco passato di distance
posizioni in avanti.
Codice | Uscita console |
---|---|
|
|
Collections.shuffle(List<T> list)
metodo
Il shuffle()
metodo mescola casualmente tutti gli elementi dell'elenco passato. Il risultato è ogni volta diverso.
Codice | Uscita console |
---|---|
|
|
4. Trovare elementi nelle raccolte
Collections.min(Collection<T> colls)
metodo
Il min()
metodo restituisce l'elemento minimo nella raccolta.
Codice | Uscita console |
---|---|
|
|
Collections.max(Collection<T> colls)
metodo
Il max()
metodo restituisce l'elemento massimo nella raccolta.
Codice | Uscita console |
---|---|
|
|
Collections.frequency(Collection<T> colls, T obj)
metodo
Il frequency()
metodo conta il numero di volte in cui l' obj
elemento si verifica nella colls
raccolta
Codice | Uscita console |
---|---|
|
|
Collections.binarySearch(Collection<T> colls, T obj)
metodo
Il binarySearch()
metodo cerca l' obj
elemento nella colls
raccolta. Restituisce l'indice dell'elemento trovato. Restituisce un numero negativo se l'elemento non viene trovato.
binarySearch()
metodo, la raccolta deve essere ordinata (usa Collections.sort()
).
Codice | Uscita console |
---|---|
|
|
Collections.disjoint(Collection<T> coll1, Collection<T> coll2)
metodo
Il disjoint()
metodo restituisce true
se le raccolte passate non hanno elementi in comune.
Codice | Uscita console |
---|---|
|
|
GO TO FULL VERSION