English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
O método trimToSize() do ArrayList Java ajusta (define) a capacidade do arraylist para igualar o número de elementos no arraylist.
A sintaxe do método trimToSize() é:
arraylist.trimToSize();
O método trimToSize() não leva nenhum parâmetro
O método trimToSize() não retorna nenhum valor. Em vez disso, ele apenas altera a capacidade do arraylist.
import java.util.ArrayList; class Main { public static void main(String[] args) { //Criar ArrayList ArrayList<String> languages = new ArrayList<>(); //Adicionar elementos ao ArrayList languages.add("Java"); languages.add("Python"); languages.add("JavaScript"); System.out.println("ArrayList: ", + languages); // Ajustar a capacidade para 3 languages.trimToSize(); System.out.println("Tamanho do ArrayList: ", + languages.size()); } }
Resultados de saída
ArrayList: [Java, Python, JavaScript] Tamanho do ArrayList: 3
No exemplo acima, criamos uma ArrayList chamada languages. A arraylist contém3elementos. Observe esta linha,
languages.trimToSize();
Aqui, o método trimToSize() ajusta o tamanho do arraylist para igualar languages (ou seja3número de elementos.
UsamosArrayList size()método para obter o número de elementos na arraylist.
AtençãoA método trimToSize() do ArrayList não é visível.
Sabemos que a capacidade do ArrayList é dinâmica. EntãoQuais são os benefícios de usar o método trimToSize() do ArrayList?
Para entender as vantagens do método trimToSize(), precisamos saber o mecanismo de funcionamento do ArrayList.
Internamente, o ArrayList usa um array para armazenar todos seus elementos. Agora, em algum ponto, o array será preenchido. Quando o array interno estiver cheio, será criado um array com capacidade igual ao do array atual1.5vezes um novo array. E todos os elementos serão movidos para o novo array.
por exemplo, suponha que o array interno esteja cheio, precisamos apenas adicionar1elementos. Aqui, o ArrayList se expandirá na mesma proporção (ou seja, o array anterior)1.5vezes).
Neste caso, haverá alguns espaços não alocados no array interno. Portanto, o método trimToSize() eliminará esses espaços não alocados e alterará a capacidade do ArrayList, tornando-a igual ao número de elementos do ArrayList.