Java ArrayList trimToSize ()

Metoda Java ArrayList trimToSize () obrezuje (nastavi) zmogljivost arraylist-a, ki je enaka številu elementov v arraylistu.

Sintaksa trimToSize()metode je:

 arraylist.trimToSize();

Tu je arraylist predmet ArrayListrazreda.

parametri trimToSize ()

trimToSize()Metoda ne sprejme nobenih parametrov

vrnjena vrednost trimToSize ()

trimToSize()Metoda ne vrne nobene vrednosti. Namesto tega spremeni samo zmogljivost arraylista.

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

Izhod

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

V zgornjem primeru smo ustvarili dva seznama poimenovanih jezikov. Seznam elementov vsebuje 3 elemente. Opazite vrstico,

 languages.trimToSize();

Tu trimToSize()metoda nastavi zmogljivost arraylista, ki je enaka številu elementov v jezikih (tj. 3).

Za pridobitev števila elementov v arraylistu smo uporabili metodo ArrayList size ().

Prednost ArrayList trimToSize ()

Vemo, da se zmogljivost ArrayListdinamično spreminja. Torej , kaj je prednost uporabe ArrayList trimToSize () metodo?

Da bi razumeli prednost trimToSize()metode, moramo preučiti delovanje ArrayList.

Interno ArrayListuporablja matriko za shranjevanje vseh njenih elementov. Zdaj bo na neki točki polje zapolnjeno. Ko je notranje polje polno, se ustvari novo polje z 1,5-krat večjo zmogljivostjo kot trenutno polje. Vsi elementi se premaknejo v novo matriko.

Denimo, da je notranja matrika polna in moramo dodati samo 1 element. Tu se ArrayListbo razširil z enakim razmerjem (tj. 1,5-krat več kot prejšnja matrika).

V tem primeru bo v notranjem polju nekaj nedodeljenega prostora. Zato trimToSize()metoda odstrani nedodeljeni prostor in spremeni zmogljivost arraylist-a, ki je enaka številu elementov v arraylistu.

trimToSize()Uporabnik ne vidi tega delovanja metode ArrayList .

Zanimive Članki...