1. Lista metodelor
Vă amintiți că creatorii Java au scris o întreagă clasă de ajutor numită Arrays
pentru confortul nostru atunci când lucrați cu matrice?
Au făcut același lucru pentru colecții. Java are o java.util.Collections
clasă care are o mulțime de metode care sunt utile pentru lucrul cu colecții. Iată doar cele mai interesante:
Metode | Descriere |
---|---|
|
Adaugă elementele e1 , e2 , e3 , ... la colls colecție |
|
Înlocuiește toate elementele din lista trecută cuobj |
|
Returnează o listă de n copii ale obj obiectului |
|
Înlocuiește toate instanțele de oldVal cu newVal din list listă |
|
Copiază toate elementele din src listă în dest listă |
|
Inversează lista. |
|
Sortează lista în ordine crescătoare |
|
Mută ciclic elementele listei list pe n elemente |
|
Amestecă aleatoriu elementele din listă |
|
Găsește elementul minim din colls colecție |
|
Găsește elementul maxim din colls colecție |
|
Determină de câte ori obj apare elementul în colls colecție |
|
Caută key într-o listă sortată și returnează indexul corespunzător. |
|
Returnează true dacă colecțiile nu au elemente în comun |
Multe dintre aceste metode nu folosesc clasele ArrayList
, HashSet
și HashMap
per se, ci cu interfețele corespunzătoare: Collection<T>
, List<T>
, Map<K, V>
.
Aceasta nu este o problemă: dacă o metodă acceptă un List<T>
, puteți oricând să îi treceți un ArrayList<Integer>
, dar operatorul de atribuire nu funcționează în direcția opusă.
2. Crearea și modificarea colecțiilor
Collections.addAll(Collection<T> colls, T e1, T e2, T e3, ...)
metodă
Metoda addAll()
adaugă elementele e1
, e2
, e3
, ... la colls
colecție Orice număr de elemente poate fi trecut.
Cod | Ieșire de consolă |
---|---|
|
|
Collections.fill(List<T> list, T obj)
metodă
Metoda fill()
înlocuiește toate elementele colecției list
cu obj
elementul.
Cod | Ieșire de consolă |
---|---|
|
|
Collections.nCopies(int n, T obj)
metodă
Metoda nCopies()
returnează o listă de n
copii ale obj
elementului. Rețineți că lista returnată este imuabilă, ceea ce înseamnă că nu o puteți modifica! Îl puteți folosi doar pentru a citi valori:
Cod | Descriere |
---|---|
|
Creați o listă imuabilă de 5 Hello șiruri de caractere Creați o listă mutabilă list și completați-l cu valorile din immutableList listă. Ieșire din consolă:
|
Collections.replaceAll (List<T> list, T oldValue, T newValue)
metodă
Metoda replaceAll()
înlocuiește toate elementele din list
colecție egale oldValue
cu newValue
.
Cod | Ieșire de consolă |
---|---|
|
|
Collections.copy (List<T> dest, List<T> src)
metodă
Metoda copy()
copiază toate elementele colecției src
în dest
colecție.
Dacă dest
colecția începe mai mult decât src
colecția, atunci elementele rămase ale dest
colecției vor rămâne intacte.
dest
trebuie să fie cel puțin la fel de lungă ca și src
colecția (în caz contrar, IndexOutOfBoundsException
va fi aruncat).
Cod | Ieșire de consolă |
---|---|
|
|
3. Ordinea elementelor
Collections.reverse(List<T> list)
metodă
Metoda reverse()
inversează ordinea elementelor listei trecute.
Cod | Ieșire de consolă |
---|---|
|
|
Collections.sort(List<T> list)
metodă
Metoda sort()
sortează lista trecută în ordine crescătoare.
Cod | Ieșire de consolă |
---|---|
|
|
Collections.rotate(List<T> list, int distance)
metodă
Metoda rotate()
mută în mod ciclic elementele listei trecute cu distance
poziții înainte.
Cod | Ieșire de consolă |
---|---|
|
|
Collections.shuffle(List<T> list)
metodă
Metoda shuffle()
amestecă aleatoriu toate elementele listei trecute. Rezultatul este diferit de fiecare dată.
Cod | Ieșire de consolă |
---|---|
|
|
4. Găsirea elementelor în colecții
Collections.min(Collection<T> colls)
metodă
Metoda min()
returnează elementul minim din colecție.
Cod | Ieșire de consolă |
---|---|
|
|
Collections.max(Collection<T> colls)
metodă
Metoda max()
returnează elementul maxim din colecție.
Cod | Ieșire de consolă |
---|---|
|
|
Collections.frequency(Collection<T> colls, T obj)
metodă
Metoda frequency()
numără de câte ori obj
apare elementul în colls
colecție
Cod | Ieșire de consolă |
---|---|
|
|
Collections.binarySearch(Collection<T> colls, T obj)
metodă
Metoda binarySearch()
caută elementul obj
din colls
colecție. Returnează indexul elementului găsit. Returnează un număr negativ dacă elementul nu este găsit.
binarySearch()
metoda, colecția trebuie sortată (utilizați Collections.sort()
).
Cod | Ieșire de consolă |
---|---|
|
|
Collections.disjoint(Collection<T> coll1, Collection<T> coll2)
metodă
Metoda disjoint()
revine true
dacă colecțiile trecute nu au niciun element în comun.
Cod | Ieșire de consolă |
---|---|
|
|
GO TO FULL VERSION