Java ArrayList trimToSize () -metoden trimmer (indstiller) arraylistens kapacitet svarende til antallet af elementer i arraylisten.
Metodens syntaks trimToSize()
er:
arraylist.trimToSize();
Her er arraylist et objekt i ArrayList
klassen.
trimToSize () Parametre
Den trimToSize()
metode tager ikke nogen parametre
trimToSize () Return Value
Den trimToSize()
metode ikke returnerer nogen værdi. Snarere ændrer det kun arraylistens kapacitet.
Eksempel 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()); ) )
Produktion
ArrayList: (Java, Python, JavaScript) Størrelse på ArrayList: 3
I ovenstående eksempel har vi oprettet to matrixlister, der hedder sprog. Arraylisten indeholder 3 elementer. Bemærk linjen,
languages.trimToSize();
Her indstiller trimToSize()
metoden kapaciteten for arraylisten lig med antallet af elementer i sprog (dvs. 3).
Vi har brugt ArrayList size () -metoden til at få antallet af elementer i arraylisten.
Fordel ved ArrayList trimToSize ()
Vi ved, at kapaciteten ArrayList
er ændret dynamisk. Så hvad er fordelen ved at bruge ArrayList trimToSize () -metoden?
For at forstå fordelene ved trimToSize()
metoden er vi nødt til at undersøge, hvordan funktionen fungerer ArrayList
.
Internt ArrayList
bruger en matrix til at gemme alle dens elementer. Nu på et tidspunkt vil arrayet blive udfyldt. Når det interne array er fuldt, oprettes et nyt array med 1,5 gange mere kapacitet end det nuværende array. Og alle elementer flyttes til det nye array.
Antag for eksempel, at den interne matrix er fuld, og vi skal kun tilføje 1 element. Her ArrayList
udvides den med det samme forhold (dvs. 1,5 gange det foregående array).
I dette tilfælde vil der være noget ikke-tildelt plads i det interne array. Derfor trimToSize()
fjerner metoden det ikke-tildelte rum og ændrer arraylistens kapacitet svarende til antallet af elementer i arraylisten.
Denne bearbejdning af ArrayList- trimToSize()
metoden er ikke synlig for brugeren.