1. Liste over metoder
Husker du at Javas skapere skrev en hel hjelpeklasse som ble kalt Arrays
for å gjøre det enklere for oss når vi jobber med arrays?
De gjorde det samme for samlinger. Java har en java.util.Collections
klasse som har mange metoder som er nyttige for å jobbe med samlinger. Her er bare de mest interessante:
Metoder | Beskrivelse |
---|---|
|
Legger til elementene e1 , e2 , e3 , ... til colls samlingen |
|
Erstatter alle elementene i den beståtte listen medobj |
|
Returnerer en liste over n kopier av obj objektet |
|
Erstatter alle forekomster av oldVal med newVal i list listen |
|
Kopierer alle elementer fra src listen til dest listen |
|
Reverserer listen. |
|
Sorterer listen i stigende rekkefølge |
|
Skifter elementene i list listen syklisk etter n elementer |
|
Tilfeldig blander elementene i listen |
|
Finner minimumselementet i colls samlingen |
|
Finner det maksimale elementet i colls samlingen |
|
Bestemmer hvor mange ganger obj elementet forekommer i colls samlingen |
|
Søker etter key i en sortert liste og returnerer den tilsvarende indeksen. |
|
Returnerer true hvis samlingene ikke har noen elementer til felles |
Mange av disse metodene bruker ikke ArrayList
, HashSet
og- HashMap
klassene i seg selv, men med de tilsvarende grensesnittene: Collection<T>
, List<T>
, Map<K, V>
.
Dette er ikke et problem: Hvis en metode aksepterer en List<T>
, kan du alltid gi den en ArrayList<Integer>
, men oppgaveoperatøren fungerer ikke i motsatt retning.
2. Opprette og endre samlinger
Collections.addAll(Collection<T> colls, T e1, T e2, T e3, ...)
metode
Metoden addAll()
legger til elementene e1
, e2
, e3
, ... til colls
samlingen Et hvilket som helst antall elementer kan sendes.
Kode | Konsollutgang |
---|---|
|
|
Collections.fill(List<T> list, T obj)
metode
Metoden fill()
erstatter alle elementene i samlingen list
med obj
elementet.
Kode | Konsollutgang |
---|---|
|
|
Collections.nCopies(int n, T obj)
metode
Metoden nCopies()
returnerer en liste over n
kopier av obj
elementet. Merk at den returnerte listen er uforanderlig, noe som betyr at du ikke kan endre den! Du kan bare bruke den til å lese verdier:
Kode | Beskrivelse |
---|---|
|
Lag en uforanderlig liste med 5 Hello strenger Lag en mutabel list og fyll den med verdiene fra immutableList listen. Konsoll utgang:
|
Collections.replaceAll (List<T> list, T oldValue, T newValue)
metode
Metoden replaceAll()
erstatter alle elementene i list
samlingen lik oldValue
med newValue
.
Kode | Konsollutgang |
---|---|
|
|
Collections.copy (List<T> dest, List<T> src)
metode
Metoden copy()
kopierer alle elementene i src
samlingen inn i dest
samlingen.
Hvis dest
samlingen starter lenger enn src
samlingen, vil de gjenværende elementene i dest
samlingen forbli intakte.
dest
må være minst like lang som src
samlingen (ellers vil en IndexOutOfBoundsException
vil bli kastet).
Kode | Konsollutgang |
---|---|
|
|
3. Rekkefølge av elementene
Collections.reverse(List<T> list)
metode
Metoden reverse()
reverserer rekkefølgen på elementene i den beståtte listen.
Kode | Konsollutgang |
---|---|
|
|
Collections.sort(List<T> list)
metode
Metoden sort()
sorterer den beståtte listen i stigende rekkefølge.
Kode | Konsollutgang |
---|---|
|
|
Collections.rotate(List<T> list, int distance)
metode
Metoden rotate()
skifter syklisk elementene i den beståtte listen etter distance
posisjoner fremover.
Kode | Konsollutgang |
---|---|
|
|
Collections.shuffle(List<T> list)
metode
Metoden shuffle()
blander tilfeldig alle elementene i den beståtte listen. Resultatet er forskjellig hver gang.
Kode | Konsollutgang |
---|---|
|
|
4. Finne elementer i samlinger
Collections.min(Collection<T> colls)
metode
Metoden min()
returnerer minimumselementet i samlingen.
Kode | Konsollutgang |
---|---|
|
|
Collections.max(Collection<T> colls)
metode
Metoden max()
returnerer det maksimale elementet i samlingen.
Kode | Konsollutgang |
---|---|
|
|
Collections.frequency(Collection<T> colls, T obj)
metode
Metoden frequency()
teller antall ganger elementet obj
forekommer i colls
samlingen
Kode | Konsollutgang |
---|---|
|
|
Collections.binarySearch(Collection<T> colls, T obj)
metode
Metoden binarySearch()
søker etter obj
elementet i colls
samlingen. Returnerer indeksen til det funnet elementet. Returnerer et negativt tall hvis elementet ikke blir funnet.
binarySearch()
metoden kalles må samlingen sorteres (bruk Collections.sort()
).
Kode | Konsollutgang |
---|---|
|
|
Collections.disjoint(Collection<T> coll1, Collection<T> coll2)
metode
Metoden disjoint()
returnerer true
hvis de beståtte samlingene ikke har noen elementer til felles.
Kode | Konsollutgang |
---|---|
|
|
GO TO FULL VERSION