1. Lista över metoder
Kommer du ihåg att Javas skapare skrev en hel hjälparklass för att Arrays
underlätta för oss när vi arbetar med arrayer?
De gjorde samma sak för samlingar. Java har en java.util.Collections
klass som har många metoder som är användbara för att arbeta med samlingar. Här är bara de mest intressanta:
Metoder | Beskrivning |
---|---|
|
Lägger till elementen e1 , e2 , e3 , ... till colls samlingen |
|
Ersätter alla element i den godkända listan medobj |
|
Returnerar en lista med n kopior av obj objektet |
|
Ersätter alla instanser av oldVal med newVal i list listan |
|
Kopierar alla element från src listan till dest listan |
|
Vänder om listan. |
|
Sorterar listan i stigande ordning |
|
Skiftar cykliskt elementen i list listan efter n element |
|
Blandar slumpmässigt elementen i listan |
|
Hittar minimielementet i colls samlingen |
|
Hittar det maximala elementet i colls samlingen |
|
Bestämmer hur många gånger obj elementet förekommer i colls samlingen |
|
Söker efter key i en sorterad lista och returnerar motsvarande index. |
|
Returnerar true om samlingarna inte har några gemensamma element |
Många av dessa metoder använder inte klasserna ArrayList
, HashSet
och HashMap
i sig, utan med motsvarande gränssnitt: Collection<T>
, List<T>
, Map<K, V>
.
Det här är inget problem: om en metod accepterar ett List<T>
, kan du alltid skicka det till ett , ArrayList<Integer>
men uppdragsoperatören fungerar inte i motsatt riktning.
2. Skapa och ändra samlingar
Collections.addAll(Collection<T> colls, T e1, T e2, T e3, ...)
metod
Metoden addAll()
lägger till elementen e1
, e2
, e3
, ... till colls
samlingen Valfritt antal element kan skickas.
Koda | Konsolutgång |
---|---|
|
|
Collections.fill(List<T> list, T obj)
metod
Metoden fill()
ersätter alla element i samlingen list
med obj
elementet.
Koda | Konsolutgång |
---|---|
|
|
Collections.nCopies(int n, T obj)
metod
Metoden nCopies()
returnerar en lista med n
kopior av obj
elementet. Observera att den returnerade listan är oföränderlig, vilket innebär att du inte kan ändra den! Du kan bara använda den för att läsa värden:
Koda | Beskrivning |
---|---|
|
Skapa en oföränderlig lista med 5 Hello strängar Skapa en föränderlig list och fyll den med värdena från immutableList listan. Konsolutgång:
|
Collections.replaceAll (List<T> list, T oldValue, T newValue)
metod
Metoden replaceAll()
ersätter alla element i samlingen list
lika oldValue
med newValue
.
Koda | Konsolutgång |
---|---|
|
|
Collections.copy (List<T> dest, List<T> src)
metod
Metoden copy()
kopierar alla delar av samlingen src
till dest
samlingen.
Om dest
samlingen börjar längre än src
samlingen kommer de återstående delarna av dest
samlingen att förbli intakta.
dest
måste vara minst lika lång som src
samlingen (annars IndexOutOfBoundsException
kastas ett testamente).
Koda | Konsolutgång |
---|---|
|
|
3. Ordning av elementen
Collections.reverse(List<T> list)
metod
Metoden reverse()
vänder ordningen på elementen i den godkända listan.
Koda | Konsolutgång |
---|---|
|
|
Collections.sort(List<T> list)
metod
Metoden sort()
sorterar den godkända listan i stigande ordning.
Koda | Konsolutgång |
---|---|
|
|
Collections.rotate(List<T> list, int distance)
metod
Metoden rotate()
förskjuter cykliskt elementen i den godkända listan med distance
positioner framåt.
Koda | Konsolutgång |
---|---|
|
|
Collections.shuffle(List<T> list)
metod
Metoden shuffle()
blandar slumpmässigt alla element i den godkända listan. Resultatet är olika varje gång.
Koda | Konsolutgång |
---|---|
|
|
4. Hitta element i samlingar
Collections.min(Collection<T> colls)
metod
Metoden min()
returnerar minimielementet i samlingen.
Koda | Konsolutgång |
---|---|
|
|
Collections.max(Collection<T> colls)
metod
Metoden max()
returnerar det maximala elementet i samlingen.
Koda | Konsolutgång |
---|---|
|
|
Collections.frequency(Collection<T> colls, T obj)
metod
Metoden frequency()
räknar antalet gånger obj
elementet förekommer i colls
samlingen
Koda | Konsolutgång |
---|---|
|
|
Collections.binarySearch(Collection<T> colls, T obj)
metod
Metoden binarySearch()
söker efter obj
elementet i colls
samlingen. Returnerar indexet för det hittade elementet. Returnerar ett negativt tal om elementet inte hittas.
binarySearch()
metoden anropas måste samlingen sorteras (använd ) Collections.sort()
.
Koda | Konsolutgång |
---|---|
|
|
Collections.disjoint(Collection<T> coll1, Collection<T> coll2)
metod
Metoden disjoint()
återkommer true
om de godkända samlingarna inte har några gemensamma element.
Koda | Konsolutgång |
---|---|
|
|
GO TO FULL VERSION