English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La méthode trimToSize() de ArrayList Java tronque (fixe) la capacité de l'arraylist pour qu'elle soit égale au nombre d'éléments de l'arraylist.
La syntaxe de la méthode trimToSize() est :
arraylist.trimToSize();
La méthode trimToSize() ne prend aucun paramètre
La méthode trimToSize() ne renvoie aucune valeur. Au lieu de cela, elle ne modifie que la capacité de l'arraylist.
import java.util.ArrayList; class Main { public static void main(String[] args) { //Créer ArrayList ArrayList<String> languages = new ArrayList<>(); //Ajouter des éléments à ArrayList languages.add("Java"); languages.add("Python"); languages.add("JavaScript"); System.out.println("ArrayList: ", + languages); // Réduire la capacité à 3 languages.trimToSize(); System.out.println("Taille de ArrayList: ", + languages.size()); } }
Résultat de la sortie
ArrayList: [Java, Python, JavaScript] Taille de ArrayList: 3
Dans l'exemple précédent, nous avons créé une ArrayList nommée languages. L'arraylist contient3d'éléments. Notez cette ligne,
languages.trimToSize();
Ici, la méthode trimToSize() ajuste la capacité de l'arraylist pour qu'elle soit égale à languages (c'est-à-dire3du nombre d'éléments dans la liste.)
Nous utilisonsArrayList size()de la méthode pour obtenir le nombre d'éléments dans l'arraylist.
AttentionLa méthode trimToSize() de ArrayList n'est pas visible.
我们知道ArrayList的容量是动态变化的。那么使用ArrayList trimToSize()方法的好处是什么?
要了解 trimToSize() 方法的优势,我们需要知道ArrayList的工作原理。
在内部,ArrayList使用一个数组来存储它的所有元素。现在,在某个点,数组将被填满。当内部数组已满时,将创建一个容量为当前数组1.5倍的新数组。并且,所有元素都被移动到新的数组中。
例如,假设内部数组已满,我们仅需添加1个元素。 在这里,ArrayList将以相同的比例扩展(即前一个数组的1.5倍)。
在这种情况下,内部数组中会有一些未分配的空间。因此,trimToSize()方法将删除未分配的空间并更改arraylist的容量,使其等于arraylist中的元素数。