«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему я не могу получить доступ к выделенным местам в ArrayList при указании начального размера?

Почему я не могу получить доступ к выделенным местам в ArrayList при указании начального размера?

Опубликовано 8 ноября 2024 г.
Просматривать:545

Why can\'t I access allocated spaces in an ArrayList when specifying an initial size?

Понимание емкости ArrayList и размера

Вопрос: Почему вы не можете изначально получить доступ к пространствам, выделенным для ArrayList, если вы укажете начальный размер ?

О: Путаница возникает из-за непонимания разницы между размером и емкостью ArrayList.

Размер ArrayList обозначает количество содержащихся в нем элементов, а емкость представляет собой максимальное количество элементов, которые он может содержать, прежде чем потребуется выделить больше памяти. Установка начальной емкости оптимизирует производительность за счет предварительного выделения места для определенного количества элементов, но при этом список не заполняется автоматически таким количеством элементов.

Например, при создании ArrayList с начальной емкостью из 10, список изначально пуст, и попытка добавить элемент с индексом 10 приведет к исключению выхода за пределы.

Чтобы добавить элементы в ArrayList, вам необходимо используйте метод add, указав индекс, в который должен быть вставлен элемент. Если вы хотите заполнить список 10 элементами, вы можете использовать цикл:

for (int i = 0; i 

Используя этот метод, вы можете добавить 10 элементов, а затем манипулировать ими с индексами от 0 до 9 без проблем с границами.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3