Interfejs listy Java

W tym samouczku dowiemy się o interfejsie List w Javie i jego metodach.

W Javie Listinterfejs jest uporządkowaną kolekcją, która umożliwia nam sekwencyjne przechowywanie elementów i uzyskiwanie do nich dostępu. Rozszerza Collectioninterfejs.

Klasy, które implementują List

Ponieważ Listjest to interfejs, nie możemy tworzyć z niego obiektów.

W celu wykorzystania funkcjonalności Listinterfejsu możemy skorzystać z następujących klas:

  • ArrayList
  • Połączona lista
  • Wektor
  • Stos

Te klasy są zdefiniowane w ramach kolekcji i implementują Listinterfejs.

Jak korzystać z listy?

W Javie musimy zaimportować java.util.Listpakiet, aby użyć List.

 // ArrayList implementation of List List list1 = new ArrayList(); // LinkedList implementation of List List list2 = new LinkedList(); 

Tutaj stworzyliśmy obiekty list1 i list2 klas ArrayListi LinkedList. Obiekty te mogą korzystać z funkcjonalności Listinterfejsu.

Metody listy

ListInterfejs obejmuje wszystkie sposoby przez Collectioninterfejs. To dlatego, że Collectionjest super interfejsem List.

Niektóre z powszechnie używanych metod Collectioninterfejsu, które są również dostępne w Listinterfejsie, to:

  • add() - dodaje element do listy
  • addAll() - dodaje wszystkie elementy jednej listy do drugiej
  • get() - pomaga w losowym dostępie do elementów z list
  • iterator() - zwraca obiekt iteratora, który może być użyty do sekwencyjnego dostępu do elementów list
  • set() - zmienia elementy list
  • remove() - usuwa element z listy
  • removeAll() - usuwa wszystkie elementy z listy
  • clear()- usuwa wszystkie elementy z listy (wydajniej niż removeAll())
  • size() - zwraca długość list
  • toArray() - konwertuje listę na tablicę
  • contains()- zwraca, truejeśli lista zawiera określony element

Implementacja interfejsu List

1. Implementacja klasy 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); ) ) 

Wynik

 Lista: (1, 2, 3) Dostęp do elementu: 3 Usunięty element: 2 

Aby dowiedzieć się więcej ArrayList, odwiedź Java ArrayList.

2. Implementacja klasy 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); ) ) 

Wynik

 Lista: (1, 2, 3) Dostęp do elementu: 3 Pozycja 3 to 1 Usunięty element: 2 

Aby dowiedzieć się więcej LinkedList, odwiedź Java LinkedList.

Lista Java a zestaw

Zarówno Listinterfejs, jak i Setinterfejs dziedziczą Collectioninterfejs. Jest jednak między nimi pewna różnica.

  • Listy mogą zawierać zduplikowane elementy. Jednak zestawy nie mogą mieć zduplikowanych elementów.
  • Elementy na listach są przechowywane w określonej kolejności. Jednak elementy w zestawach są przechowywane w grupach, podobnie jak zbiory w matematyce.

Teraz, gdy już wiemy, co to Listjest, szczegółowo omówimy jego implementacje w programach ArrayListi LinkedListklasach w następnych samouczkach.

Interesujące artykuły...