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);