Java ArrayList trimToSize ()

Metoda trimToSize () w języku Java ArrayList ogranicza (ustawia) pojemność tablicy arraylist równą liczbie elementów tablicy.

Składnia trimToSize()metody to:

 arraylist.trimToSize();

Tutaj arraylist jest obiektem ArrayListklasy.

trimToSize () Parametry

trimToSize()Metoda nie ma żadnych parametrów

trimToSize () Wartość zwracana

trimToSize()Metoda nie zwraca żadnej wartości. Raczej zmienia tylko możliwości arraylisty.

Przykład 1: Java ArrayList trimToSize ()

 import java.util.ArrayList; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList languages = new ArrayList(); // add element to ArrayList languages.add("Java"); languages.add("Python"); languages.add("JavaScript"); System.out.println("ArrayList: " + languages); // trim capacity to 3 languages.trimToSize(); System.out.println("Size of ArrayList: " + languages.size()); ) )

Wynik

 ArrayList: (Java, Python, JavaScript) Rozmiar ArrayList: 3

W powyższym przykładzie utworzyliśmy dwie arraylisty nazwane języki. Arraylist zawiera 3 elementy. Zwróć uwagę na linię,

 languages.trimToSize();

Tutaj trimToSize()metoda ustawia pojemność arraylisty równą liczbie elementów w językach (tj. 3).

Użyliśmy metody ArrayList size (), aby uzyskać liczbę elementów w arraylist.

Zaleta ArrayList trimToSize ()

Wiemy, że pojemność ArrayListzmienia się dynamicznie. Więc co jest zaletą przy użyciu metody ArrayList trimToSize ()?

Aby zrozumieć zalety trimToSize()metody, musimy przyjrzeć się działaniu ArrayList.

Wewnętrznie ArrayListużywa tablicy do przechowywania wszystkich jej elementów. Teraz w pewnym momencie tablica zostanie wypełniona. Gdy wewnętrzna tablica jest pełna, tworzona jest nowa tablica o pojemności 1,5 raza większej niż bieżąca. Wszystkie elementy są przenoszone do nowej tablicy.

Na przykład załóżmy, że wewnętrzna tablica jest pełna i musimy dodać tylko 1 element. Tutaj ArrayListrozszerzy się z tym samym współczynnikiem (tj. 1,5 raza od poprzedniej tablicy).

W takim przypadku w wewnętrznej tablicy będzie trochę nieprzypisanej przestrzeni. W związku z tym trimToSize()metoda usuwa nieprzypisaną przestrzeń i zmienia pojemność arraylisty równą liczbie elementów w arraylist.

To działanie trimToSize()metody ArrayList nie jest widoczne dla użytkownika.

Interesujące artykuły...