Метод ensureCapacity
Метод ensureCapacity увеличивает внутреннюю емкость
списка ArrayList до указанного значения, если
текущая емкость меньше переданного числа. В первый
параметр мы передаем минимально необходимую емкость.
Метод не изменяет количество элементов в списке и не
добавляет новые элементы - он лишь резервирует место
во внутреннем массиве, чтобы избежать многократного
перераспределения памяти при массовом добавлении
элементов.
Если переданное значение меньше или равно текущей емкости, метод не делает ничего. Метод не возвращает результат и не выбрасывает исключений при корректных входных данных.
Синтаксис
ArrayList<Type> list = new ArrayList<>();
list.ensureCapacity(minCapacity);
Пример
Давайте создадим список, зарезервируем в нем место
под 100 элементов и затем добавим несколько
элементов:
import java.util.ArrayList;
public class Main
{
public static void main(String[] args)
{
ArrayList<Integer> list = new ArrayList<>();
list.ensureCapacity(100);
list.add(1);
list.add(2);
list.add(3);
System.out.println(list);
}
}
Результат выполнения кода:
[1, 2, 3]
Пример
Давайте убедимся, что метод не изменяет размер списка, а только резервирует емкость:
import java.util.ArrayList;
public class Main
{
public static void main(String[] args)
{
ArrayList<String> list = new ArrayList<>();
list.add("abcde");
list.ensureCapacity(50);
System.out.println(list.size());
System.out.println(list);
}
}
Результат выполнения кода:
1
[abcde]
Пример
Давайте зарезервируем место под большое количество элементов и затем заполним список значениями:
import java.util.ArrayList;
public class Main
{
public static void main(String[] args)
{
ArrayList<Integer> list = new ArrayList<>();
list.ensureCapacity(1000);
for (int i = 0; i < 5; i++)
{
list.add(i);
}
System.out.println(list);
}
}
Результат выполнения кода:
[0, 1, 2, 3, 4]
Смотрите также
-
класс
ArrayList,
который представляет динамический массив -
метод
trimToSize,
который уменьшает емкость до размера списка -
метод
add,
который добавляет элемент в список -
метод
size,
который возвращает количество элементов