I denne opplæringen vil vi lære om List-grensesnittet i Java og dets metoder.
I Java er List
grensesnittet en ordnet samling som lar oss lagre og få tilgang til elementer sekvensielt. Det utvider Collection
grensesnittet.
Klasser som implementerer listen
Siden List
er et grensesnitt, kan vi ikke lage objekter fra det.
For å kunne bruke funksjonene i List
grensesnittet, kan vi bruke disse klassene:
- ArrayList
- LinkedList
- Vector
- Stable
Disse klassene er definert i rammeverket for samlinger og implementerer List
grensesnittet.
Hvordan bruke List?
I Java må vi importere java.util.List
pakken for å kunne bruke den List
.
// ArrayList implementation of List List list1 = new ArrayList(); // LinkedList implementation of List List list2 = new LinkedList();
Her har vi opprettet objekter liste1 og liste2 over klasser ArrayList
og LinkedList
. Disse objektene kan bruke funksjonene til List
grensesnittet.
Metoder for liste
Den List
Grensesnittet omfatter alle fremgangsmåtene ifølge Collection
grensesnitt. Det er fordi det Collection
er et supergrensesnitt av List
.
Noen av de vanligste metodene for Collection
grensesnittet som også er tilgjengelige i List
grensesnittet er:
add()
- legger til et element i en listeaddAll()
- legger til alle elementene i en liste til en annenget()
- hjelper med å tilfeldig få tilgang til elementer fra listeriterator()
- returnerer iteratorobjekt som kan brukes til sekvensielt å få tilgang til elementer i listerset()
- endrer elementer i listerremove()
- fjerner et element fra listenremoveAll()
- fjerner alle elementene fra listenclear()
- fjerner alle elementene fra listen (mer effektiv ennremoveAll()
)size()
- returnerer lengden på listertoArray()
- konverterer en liste til en matrisecontains()
- returnerertrue
hvis en liste inneholder spesifisert element
Implementering av listegrensesnittet
1. Implementering av ArrayList-klassen
import java.util.List; import java.util.ArrayList; class Main ( public static void main(String() args) ( // Creating list using the ArrayList class List numbers = new ArrayList(); // Add elements to the list numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("List: " + numbers); // Access element from the list int number = numbers.get(2); System.out.println("Accessed Element: " + number); // Remove element from the list int removedNumber = numbers.remove(1); System.out.println("Removed Element: " + removedNumber); ) )
Produksjon
Liste: (1, 2, 3) Element som er tilgjengelig: 3 Fjernet element: 2
For å lære mer om det ArrayList
, besøk Java ArrayList.
2. Implementering av LinkedList-klassen
import java.util.List; import java.util.LinkedList; class Main ( public static void main(String() args) ( // Creating list using the LinkedList class List numbers = new LinkedList(); // Add elements to the list numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("List: " + numbers); // Access element from the list int number = numbers.get(2); System.out.println("Accessed Element: " + number); // Using the indexOf() method int index = numbers.indexOf(2); System.out.println("Position of 3 is " + index); // Remove element from the list int removedNumber = numbers.remove(1); System.out.println("Removed Element: " + removedNumber); ) )
Produksjon
Liste: (1, 2, 3) Element som er tilgjengelig: 3 Posisjon på 3 er 1 Fjernet element: 2
For å lære mer om det LinkedList
, besøk Java LinkedList.
Java List vs. Set
Både List
grensesnittet og Set
grensesnittet arver Collection
grensesnittet. Imidlertid er det noen forskjell mellom dem.
- Lister kan inneholde dupliserte elementer. Sett kan imidlertid ikke ha duplikatelementer.
- Elementer i lister lagres i en eller annen rekkefølge. Imidlertid lagres elementer i sett i grupper som sett i matematikk.
Nå som vi vet hva som List
er, vil vi se implementeringene i ArrayList
og LinkedList
klassene i detalj i de neste opplæringene.