1. Liste over metoder
Kan du huske, at Javas skabere skrev en hel hjælperklasse, der blev kaldt Arrays
for vores bekvemmelighed, når vi arbejdede med arrays?
De gjorde det samme for samlinger. Java har en java.util.Collections
klasse, der har en masse metoder, der er nyttige til at arbejde med samlinger. Her er blot de mest interessante:
Metoder | Beskrivelse |
---|---|
|
Tilføjer elementerne e1 , e2 , e3 , ... til colls samlingen |
|
Erstatter alle elementer i den beståede liste medobj |
|
Returnerer en liste over n kopier af obj objektet |
|
Erstatter alle forekomster af oldVal med newVal på list listen |
|
Kopierer alle elementer fra src listen til dest listen |
|
Vender listen om. |
|
Sorterer listen i stigende rækkefølge |
|
Skifter elementerne i list listen cyklisk efter n elementer |
|
Blander tilfældigt elementerne på listen |
|
Finder minimumselementet i colls samlingen |
|
Finder det maksimale element i colls samlingen |
|
Bestemmer, hvor mange gange obj elementet forekommer i colls samlingen |
|
Søger efter key i en sorteret liste og returnerer det tilsvarende indeks. |
|
Returnerer true , hvis samlingerne ikke har nogen elementer til fælles |
Mange af disse metoder bruger ikke klasserne ArrayList
, HashSet
og HashMap
i sig selv, men med de tilsvarende grænseflader: Collection<T>
, List<T>
, Map<K, V>
.
Dette er ikke et problem: Hvis en metode accepterer en List<T>
, kan du altid give den en ArrayList<Integer>
, men opgaveoperatøren arbejder ikke i den modsatte retning.
2. Oprettelse og ændring af samlinger
Collections.addAll(Collection<T> colls, T e1, T e2, T e3, ...)
metode
Metoden addAll()
tilføjer elementerne e1
, e2
, e3
, ... til colls
samlingen Et hvilket som helst antal elementer kan passeres.
Kode | Konsoludgang |
---|---|
|
|
Collections.fill(List<T> list, T obj)
metode
Metoden fill()
erstatter alle elementer i samlingen list
med obj
elementet.
Kode | Konsoludgang |
---|---|
|
|
Collections.nCopies(int n, T obj)
metode
Metoden nCopies()
returnerer en liste over n
kopier af obj
elementet. Bemærk, at den returnerede liste er uforanderlig, hvilket betyder, at du ikke kan ændre den! Du kan kun bruge det til at læse værdier:
Kode | Beskrivelse |
---|---|
|
Opret en uforanderlig liste med 5 Hello strenge Opret en foranderlig list og fyld den med værdierne fra immutableList listen. Konsoludgang:
|
Collections.replaceAll (List<T> list, T oldValue, T newValue)
metode
Metoden replaceAll()
erstatter alle elementer i samlingen list
lig oldValue
med newValue
.
Kode | Konsoludgang |
---|---|
|
|
Collections.copy (List<T> dest, List<T> src)
metode
Metoden copy()
kopierer alle elementer i src
samlingen ind i dest
samlingen.
Hvis dest
samlingen starter længere end src
samlingen, forbliver de resterende elementer i dest
samlingen intakte.
dest
skal være mindst lige så lang som src
samlingen (ellers IndexOutOfBoundsException
bliver der kastet et testamente).
Kode | Konsoludgang |
---|---|
|
|
3. Elementernes rækkefølge
Collections.reverse(List<T> list)
metode
Metoden reverse()
vender om rækkefølgen af elementerne i den beståede liste.
Kode | Konsoludgang |
---|---|
|
|
Collections.sort(List<T> list)
metode
Metoden sort()
sorterer den beståede liste i stigende rækkefølge.
Kode | Konsoludgang |
---|---|
|
|
Collections.rotate(List<T> list, int distance)
metode
Metoden rotate()
flytter cyklisk elementerne i den beståede liste efter distance
positioner fremad.
Kode | Konsoludgang |
---|---|
|
|
Collections.shuffle(List<T> list)
metode
Metoden shuffle()
blander tilfældigt alle elementerne i den beståede liste. Resultatet er forskelligt hver gang.
Kode | Konsoludgang |
---|---|
|
|
4. At finde elementer i samlinger
Collections.min(Collection<T> colls)
metode
Metoden min()
returnerer minimumselementet i samlingen.
Kode | Konsoludgang |
---|---|
|
|
Collections.max(Collection<T> colls)
metode
Metoden max()
returnerer det maksimale element i samlingen.
Kode | Konsoludgang |
---|---|
|
|
Collections.frequency(Collection<T> colls, T obj)
metode
Metoden frequency()
tæller antallet af gange elementet obj
forekommer i colls
samlingen
Kode | Konsoludgang |
---|---|
|
|
Collections.binarySearch(Collection<T> colls, T obj)
metode
Metoden binarySearch()
søger efter obj
elementet i colls
samlingen. Returnerer indekset for det fundne element. Returnerer et negativt tal, hvis elementet ikke findes.
binarySearch()
, skal samlingen sorteres (brug Collections.sort()
).
Kode | Konsoludgang |
---|---|
|
|
Collections.disjoint(Collection<T> coll1, Collection<T> coll2)
metode
Metoden disjoint()
vender tilbage true
, hvis de beståede samlinger ikke har nogen elementer til fælles.
Kode | Konsoludgang |
---|---|
|
|
GO TO FULL VERSION