V tomto tutoriále sa dozvieme o rozhraní List v Jave a jeho metódach.
V Jave je List
rozhranie usporiadanou kolekciou, ktorá nám umožňuje ukladať a pristupovať k prvkom postupne. Rozširuje Collection
rozhranie.
Triedy, ktoré implementujú zoznam
Pretože List
je to rozhranie, nemôžeme z neho vytvárať objekty.
Aby sme mohli používať funkcie List
rozhrania, môžeme použiť tieto triedy:
- ArrayList
- LinkedList
- Vektor
- Stoh
Tieto triedy sú definované v rámci kolekcií a implementujú List
rozhranie.
Ako používať zoznam?
V prostredí Java musíme java.util.List
na použitie importovať balík List
.
// ArrayList implementation of List List list1 = new ArrayList(); // LinkedList implementation of List List list2 = new LinkedList();
Tu sme vytvorili objekty list1 a list2 tried ArrayList
a LinkedList
. Tieto objekty môžu využívať funkcie List
rozhrania.
Metódy zoznamu
List
Rozhranie zahŕňa všetky metódy Collection
rozhrania. Je to preto, že Collection
je super rozhraním List
.
Niektoré z bežne používaných metód Collection
rozhrania, ktoré je tiež k dispozícii v List
rozhraní, sú:
add()
- pridá prvok do zoznamuaddAll()
- pridá všetky prvky jedného zoznamu do druhéhoget()
- pomáha pri náhodnom prístupe k prvkom zo zoznamoviterator()
- vráti objekt iterátora, ktorý je možné použiť na postupný prístup k prvkom zoznamovset()
- mení prvky zoznamovremove()
- odstráni prvok zo zoznamuremoveAll()
- odstráni všetky prvky zo zoznamuclear()
- odstráni všetky prvky zo zoznamu (efektívnejšie akoremoveAll()
)size()
- vráti dĺžku zoznamovtoArray()
- prevádza zoznam do poľacontains()
- vráti,true
ak zoznam obsahuje zadaný prvok
Implementácia rozhrania zoznamu
1. Implementácia triedy 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); ) )
Výkon
Zoznam: (1, 2, 3) Prístup k prvku: 3 Odstránený prvok: 2
Ak sa chcete dozvedieť viac ArrayList
, navštívte Java ArrayList.
2. Implementácia triedy 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); ) )
Výkon
Zoznam: (1, 2, 3) Prístup k prvku: 3 Pozícia 3 je 1 Odstránený prvok: 2
Ak sa chcete dozvedieť viac LinkedList
, navštívte stránku Java LinkedList.
Zoznam Java vs.
Obe List
rozhrania a Set
rozhrania dedí Collection
rozhranie. Existuje však medzi nimi určitý rozdiel.
- Zoznamy môžu obsahovať duplicitné prvky. Sady však nemôžu obsahovať duplicitné prvky.
- Prvky v zoznamoch sú uložené v určitom poradí. Prvky v množinách sú však uložené v skupinách ako množiny v matematike.
Teraz, keď vieme, čo List
je, uvidíme jeho implementácie ArrayList
a LinkedList
triedy podrobne v nasledujúcich tutoriáloch.