Java ArrayList trimToSize ()

Metoda Java ArrayList trimToSize () ořezává (nastavuje) kapacitu seznamu polí rovnou počtu prvků v seznamu polí.

Syntaxe trimToSize()metody je:

 arraylist.trimToSize();

Arraylist je zde objektem ArrayListtřídy.

Parametry trimToSize ()

trimToSize()Metoda nemá žádné parametry

trimToSize () návratová hodnota

trimToSize()Metoda nevrací žádnou hodnotu. Spíše to jen změní kapacitu seznamu skladeb.

Příklad 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()); ) )

Výstup

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

Ve výše uvedeném příkladu jsme vytvořili dva seznamy polí pojmenované jazyky. Arraylist obsahuje 3 prvky. Všimněte si řádku,

 languages.trimToSize();

Zde trimToSize()metoda nastavuje kapacitu arraylistu rovnou počtu prvků v jazycích (tj. 3).

K získání počtu prvků v seznamu polí jsme použili metodu ArrayList size ().

Výhoda ArrayList trimToSize ()

Víme, že kapacita ArrayListse dynamicky mění. Takže to, co je výhoda použití metody ArrayList trimToSize ()?

Abychom pochopili výhodu trimToSize()metody, musíme se podívat na její fungování ArrayList.

Interně ArrayListpoužívá pole k ukládání všech jeho prvků. Nyní bude pole v určitém okamžiku vyplněno. Když je interní pole plné, vytvoří se nové pole s 1,5krát větší kapacitou než aktuální pole. A všechny prvky jsou přesunuty do nového pole.

Předpokládejme například, že vnitřní pole je plné a musíme přidat pouze 1 prvek. Zde ArrayListse rozbalí se stejným poměrem (tj. 1,5násobek předchozího pole).

V tomto případě bude v interním poli nějaký nepřiřazený prostor. Proto, trimToSize()způsob odstraní nepřiřazené prostor a mění kapacitu ArrayList roven počtu prvků v ArrayList.

Toto fungování trimToSize()metody ArrayList není uživateli viditelné.

Zajímavé články...