Jakie znasz sposoby implementacji interfejsu List w języku Java?
sobes.tech AI
Odpowiedź od AI
W Javie interfejs List można zaimplementować na różne sposoby, w zależności od wymagań dotyczących wydajności i funkcjonalności:
-
ArrayList — implementuje dynamiczną tablicę. Szybki dostęp po indeksie, ale operacje wstawiania i usuwania w środku listy są wolne.
-
LinkedList — implementuje listę dwukierunkową. Szybkie wstawianie i usuwanie w dowolnym miejscu, ale dostęp po indeksie jest wolny.
-
CopyOnWriteArrayList — bezpieczna dla wątków implementacja oparta na kopiowaniu tablicy przy zmianach, odpowiednia dla scenariuszy z dużą liczbą odczytów i rzadkimi zmianami.
-
Stack — klasa rozszerzająca Vector, implementuje strukturę danych stos (LIFO).
Przykład użycia ArrayList:
List<String> list = new ArrayList<>();
list.add("Pierwszy");
list.add("Drugi");
System.out.println(list.get(0)); // Wyświetli "Pierwszy"
Wybór implementacji zależy od konkretnych zadań i wymagań dotyczących wydajności.