English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La función trimToSize() de ArrayList Java ajusta (establece) la capacidad de ArrayList para que sea igual al número de elementos en ArrayList.
La sintaxis de la función trimToSize() es:
arraylist.trimToSize();
La función trimToSize() no lleva parámetros
La función trimToSize() no devuelve ningún valor. En su lugar, solo cambia la capacidad de ArrayList.
import java.util.ArrayList; class Main { public static void main(String[] args) { //Crear ArrayList ArrayList<String> languages = new ArrayList<>(); //Agregar elementos a ArrayList languages.add("Java"); languages.add("Python"); languages.add("JavaScript"); System.out.println("ArrayList: ", + languages); // Ajustar la capacidad a 3 languages.trimToSize(); System.out.println("Tamaño de ArrayList: ", + languages.size()); } }
Resultado de salida
ArrayList: [Java, Python, JavaScript] Tamaño de ArrayList: 3
En el ejemplo anterior, creamos una lista de array llamada languages. La lista de array contiene3elementos. Nota esta línea,
languages.trimToSize();
Aquí, la función trimToSize() ajusta el tamaño de la capacidad de ArrayList para que sea igual a languages (es decir,3los elementos en su interior.
UsamosArrayList size()método para obtener el número de elementos en la lista de array.
AtenciónLa función trimToSize() de ArrayList no es visible.
Sabemos que la capacidad de ArrayList es dinámica. Entonces¿Cuáles son las ventajas de usar el método trimToSize() de ArrayList?
Para entender las ventajas del método trimToSize(), necesitamos saber el mecanismo de trabajo de ArrayList.
Internamente, ArrayList utiliza un array para almacenar todos sus elementos. Ahora, en algún punto, el array se llenará. Cuando el array interno está lleno, se creará un array con capacidad igual al tamaño actual del array.1.5vez de nuevo array. Y todos los elementos se mueven al nuevo array.
por ejemplo, supongamos que el array interno está lleno, solo necesitamos agregar1elementos. Aquí, ArrayList se expandirá en la misma proporción (es decir, el anterior array de1.5vez).
En este caso, habrá algunos espacios no asignados en el array interno. Por lo tanto, el método trimToSize() eliminará los espacios no asignados y cambiará la capacidad de ArrayList para que sea igual al número de elementos en ArrayList.