Рекомендуется ли инициализировать массив с начальной емкостью [дубликаты]

1

Считается ли наилучшей предпосылкой инициализировать Коллекции (например: Arraylist) с начальной способностью?

Из моего наблюдения с помощью доджара было похоже, что инициализация уменьшает потребность в "расширении" исходного массива, а также уменьшает размер внутренней структуры данных из-за изменения размера.

  • 4
    Очевидно, если вы знаете, сколько элементов потребуется, это хорошая идея. В противном случае я просто игнорирую это - прирост производительности незначителен.
Теги:
arraylist
collections

1 ответ

0

Как отмечается в комментарии, если вы знаете количество элементов, которые в конечном итоге потребуются, то это принесет вам некоторую производительность, так как вам не нужно перераспределять массив поддержки, когда количество элементов увеличивается, чтобы превысить текущую емкость.

Однако есть компромисс, потому что, если вы не можете оценить его хорошо (в порядке величины), вы можете потерять память, выделив слишком много в начале.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню