In deze zelfstudie leren we over de lijstinterface in Java en zijn methoden.
In Java is de List
interface een geordende verzameling waarmee we elementen opeenvolgend kunnen opslaan en openen. Het breidt de Collection
interface uit.
Klassen die List
Omdat het List
een interface is, kunnen we er geen objecten van maken.
Om functionaliteiten van de List
interface te gebruiken, kunnen we deze klassen gebruiken:
- ArrayList
- LinkedList
- Vector
- Stapel
Deze klassen worden gedefinieerd in het Collections framework en implementeren de List
interface.
Hoe gebruik je List?
In Java moeten we een java.util.List
pakket importeren om List
.
// ArrayList implementation of List List list1 = new ArrayList(); // LinkedList implementation of List List list2 = new LinkedList();
Hier hebben we objecten list1 en list2 met klassen ArrayList
en gemaakt LinkedList
. Deze objecten kunnen de functionaliteiten van de List
interface gebruiken.
Methoden van lijst
De List
interface bevat alle methoden van de Collection
interface. Het is omdat het Collection
een superinterface is van List
.
Enkele van de veelgebruikte methoden van de Collection
interface die ook beschikbaar zijn in de List
interface zijn:
add()
- voegt een element toe aan een lijstaddAll()
- voegt alle elementen van de ene lijst aan de andere toeget()
- helpt om willekeurig toegang te krijgen tot elementen uit lijsteniterator()
- geeft een iteratorobject terug dat kan worden gebruikt om opeenvolgend toegang te krijgen tot elementen van lijstenset()
- verandert elementen van lijstenremove()
- verwijdert een element uit de lijstremoveAll()
- verwijdert alle elementen uit de lijstclear()
- verwijdert alle elementen uit de lijst (efficiënter danremoveAll()
)size()
- geeft de lengte van lijsten terugtoArray()
- zet een lijst om in een arraycontains()
- geeft terugtrue
als een lijst een gespecificeerd element bevat
Implementatie van de lijstinterface
1. Implementatie van de klasse ArrayList
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); ) )
Uitvoer
Lijst: (1, 2, 3) Betreden element: 3 Verwijderd element: 2
Voor meer informatie over ArrayList
, bezoek Java ArrayList.
2. Implementatie van de LinkedList Class
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); ) )
Uitvoer
Lijst: (1, 2, 3) Betreden element: 3 Positie van 3 is 1 verwijderd element: 2
Voor meer informatie over LinkedList
, bezoek Java LinkedList.
Java-lijst versus set
Zowel de List
interface als de Set
interface erft de Collection
interface. Er bestaat echter een verschil tussen beide.
- Lijsten kunnen dubbele elementen bevatten. Sets kunnen echter geen dubbele elementen bevatten.
- Elementen in lijsten worden in een bepaalde volgorde opgeslagen. Elementen in sets worden echter in groepen opgeslagen, zoals sets in de wiskunde.
Nu we weten wat het List
is, zullen we de implementaties ervan in ArrayList
en LinkedList
klassen in detail zien in de volgende tutorials.