English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной курс Java

Java 流程控制

Java 数组

Java 面向对象(I)

Java 面向对象(II)

Java 面向对象(III)

Обработка исключений Java

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java Ввод/вывод (I/O)

Java Reader/Writer

Другие темы Java

Метод trimToSize() класса Java ArrayList: использование и пример

Java методы ArrayList

Метод trimToSize() класса Java ArrayList уменьшает (устанавливает) размер ArrayList до числа элементов в ArrayList.

Синтаксис метода trimToSize():

arraylist.trimToSize();

Параметры trimToSize()

Метод trimToSize() не принимает никаких параметров

Возвратное значение trimToSize()

Метод trimToSize() не возвращает никакого значения. Вместо этого, он только изменяет размер ArrayList.

Пример 1: Java ArrayList trimToSize()

import java.util.ArrayList;
class Main {
    public static void main(String[] args) {
        //Создание ArrayList
        ArrayList<String> languages = new ArrayList<>();
        //Добавление элементов в ArrayList
        languages.add("Java");
        languages.add("Python");
        languages.add("JavaScript");
        System.out.println("ArrayList: " + languages);
        // Уменьшение размера до 3
        languages.trimToSize();
        System.out.println("Размер ArrayList: " + languages.size());
    }
}

Результат вывода

ArrayList: [Java, Python, JavaScript]
Размер ArrayList: 3

В примере выше мы создали ArrayList под названием languages. ArrayList содержит 3 элемента. Обратите внимание на эту строку:

languages.trimToSize();

Здесь метод trimToSize() устанавливает размер ArrayList равным languages (т.е. 3) числу элементов.

Мы используемArrayList size()метод для получения числа элементов в ArrayList.

ВниманиеArrayList trimToSize() метод работы не виден.

Преимущества метода trimToSize() ArrayList

Мы знаем, что容量 ArrayList динамически изменяется. ТогдаКаковы преимущества использования метода trimToSize() ArrayList?

Чтобы понять преимущества метода trimToSize(), нужно знать принцип работы ArrayList.

Внутри, ArrayList использует массив для хранения всех своих элементов. В某一个 момент массив будет заполнен. Когда внутренний массив заполнен, будет создан новый массив с объемом в 1,5 раза больше текущего массива. И все элементы будут перемещены в новый массив.

Например, предположим, что внутренний массив уже полон, и нам нужно добавить1элементов. В этом случае, ArrayList расширится в том же соотношении (т.е. в 1,5 раза больше предыдущего массива).

В этом случае, в внутреннем массиве будет некоторое количество не выделенного пространства. Поэтому метод trimToSize() удалит не выделенное пространство и изменит容量 arraylist, чтобы он был равен количеству элементов arraylist.

Java методы ArrayList