V tej vadnici bomo spoznali vmesnik List v Javi in njegove metode.
V Javi je List
vmesnik urejena zbirka, ki nam omogoča zaporedno shranjevanje in dostop do elementov. Razširi Collection
vmesnik.
Razredi, ki izvajajo seznam
Ker List
je vmesnik, iz njega ne moremo ustvarjati predmetov.
Za uporabo funkcionalnosti List
vmesnika lahko uporabimo te razrede:
- ArrayList
- LinkedList
- Vektor
- Stack
Ti razredi so definirani v okviru Collections in izvajajo List
vmesnik.
Kako uporabljati seznam?
V Javi moramo uvoziti java.util.List
paket, da ga lahko uporabljamo List
.
// ArrayList implementation of List List list1 = new ArrayList(); // LinkedList implementation of List List list2 = new LinkedList();
Tu smo ustvarili predmete list1 in list2 razredov ArrayList
in LinkedList
. Ti predmeti lahko uporabljajo funkcionalnosti List
vmesnika.
Metode seznama
List
Vmesnik vključuje vse metode v Collection
vmesniku. To je zato, ker Collection
je super vmesnik List
.
Nekatere najpogosteje uporabljene metode Collection
vmesnika, ki so na voljo tudi v List
vmesniku, so:
add()
- doda element na seznamaddAll()
- doda vse elemente enega seznama drugemuget()
- pomaga pri naključnem dostopu do elementov s seznamoviterator()
- vrne objekt iteratorja, ki se lahko uporablja za zaporedni dostop do elementov seznamovset()
- spreminja elemente seznamovremove()
- odstrani element s seznamaremoveAll()
- odstrani vse elemente s seznamaclear()
- odstrani vse elemente s seznama (bolj učinkovito kotremoveAll()
)size()
- vrne dolžino seznamovtoArray()
- pretvori seznam v matrikocontains()
- vrne,true
če seznam vsebuje določen element
Izvajanje vmesnika seznama
1. Izvajanje razreda 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); ) )
Izhod
Seznam: (1, 2, 3) Dostopni element: 3 Odstranjeni element: 2
Če želite izvedeti več o tem ArrayList
, obiščite Java ArrayList.
2. Izvajanje razreda LinkedList
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); ) )
Izhod
Seznam: (1, 2, 3) Dostopni element: 3 Položaj 3 je 1 Odstranjeni element: 2
Če želite izvedeti več o tem LinkedList
, obiščite Java LinkedList.
Seznam Java in nabor
Tako List
vmesnik in Set
vmesnik podeduje Collection
vmesnik. Vendar obstaja nekaj razlike med njima.
- Seznami lahko vključujejo podvojene elemente. Vendar kompleti ne morejo imeti podvojenih elementov.
- Elementi na seznamih so shranjeni v določenem vrstnem redu. Vendar so elementi v nizih shranjeni v skupinah, kot so nizi v matematiki.
Zdaj, ko vemo, kaj List
je, bomo v naslednjih vajah podrobno videli njegove izvedbe ArrayList
in LinkedList
razrede.