Sobes.tech
Junior

Czym jest ArrayList?

sobes.tech AI

Odpowiedź od AI

ArrayList to modyfikowalna kolekcja oparta na tablicy. Implementuje interfejs List i zapewnia dynamiczną tablicę obiektów, gdzie rozmiar może się zwiększać lub zmniejszać w miarę dodawania lub usuwania elementów.

Kluczowe cechy:

  • Dostęp losowy: Elementy są dostępne po indeksie w czasie O(1).
  • Dynamczny rozmiar: Przy dodawaniu elementów, jeśli wewnętrzna tablica jest pełna, tworzona jest nowa tablica większego rozmiaru i stare elementy są do niej kopiowane.
  • Niebezpieczny wątkowo: Jeśli wymagana jest użycie w środowisku wielowątkowym, konieczna jest synchronizacja, np. za pomocą Collections.synchronizedList().
  • Lepszy do: Częstych operacji odczytu i rzadkich operacji wstawiania/usuwania w środku listy.

Przykład tworzenia i użycia:

List<String> list = new ArrayList<>();
list.add("Element 1");
list.add("Element 2");
String element = list.get(0); // Dostęp po indeksie

System.out.println(element);