Méthode trimToSize() de Java ArrayList
La méthode trimToSize() est utilisée pour ajuster la capacité du tableau dynamique au nombre d'éléments du tableau.
La syntaxe de la méthode trimToSize() est :
arraylist.trimToSize();
Remarque :arraylist est un objet de la classe ArrayList.
Description des paramètres :
- Aucune
Valeur de retour
Aucune valeur de retour, modifie uniquement la capacité de l'ArrayList.
Exemple
L'exemple suivant illustre l'utilisation de la méthode trimToSize() :
Exemple
class Main {
public static void main(String[] args){
// Créer un tableau dynamique
ArrayList<String> sites = new ArrayList<>();
sites.add("Google");
sites.add("Example");
sites.add("Taobao");
System.out.println("ArrayList : " + sites);
// Ajuster la capacité à 3
sites.trimToSize();
System.out.println("ArrayList size: " + sites.size());
}
}
L'exécution du programme ci-dessus produit la sortie suivante :
ArrayList : [Google, Example, Taobao] ArrayList 大小: 3
Dans l'exemple ci-dessus, la méthode trimToSize() définit la capacité du tableau dynamique au nombre d'éléments dans sites (c'est-à-dire 3).
Avantages de la méthode trimToSize() d'ArrayList
Nous savons que la capacité d'ArrayList change dynamiquement. Quel est donc l'avantage d'utiliser la méthode trimToSize() d'ArrayList ?
Pour comprendre les avantages de la méthode trimToSize(), nous devons étudier les principes de fonctionnement internes d'ArrayList.
En interne, ArrayList utilise un tableau pour stocker les éléments. Lorsque le tableau est sur le point d'être plein, un nouveau tableau est créé avec une capacité 1.5 fois celle du tableau actuel.
En même temps, tous les éléments sont déplacés vers le nouveau tableau. Supposons que le tableau interne soit plein et que nous ajoutions 1 élément supplémentaire, la capacité d'ArrayList augmentera selon le même rapport (c'est-à-dire 1.5 fois le tableau précédent).
Dans ce cas, il y aura un certain espace non alloué dans le tableau interne.
À ce stade, la méthode trimToSize() peut supprimer l'espace non alloué et modifier la capacité de l'ArrayList pour qu'elle soit égale au nombre d'éléments dans l'ArrayList.
Autres extensions
Java ArrayList