ArrayList(int initialCapacity)
ensureCapacity(int minCapacity)
ArrayList управление емкостю
Код:
В ArrayList видимо нельзя. Нет ли уже готовых инструментов которые такое позволяют ?
ЗЫ. Прошу прощения за глупый вопрос. Уже догадался что можно в сорси посмотреть :). Увеличивает емкость в полтора раза.
Остается вопрос такой.
Нет ли уже готовых инструментов которые позволяют управлять емкостю ?
А если серьёзно, то я б не использовал ArrayList в тех случаях, где размер списка может меняться, потому что лучше тогда использовать LinkedList. Производительность тогда будет еще выше, потому что Linked List быстрее работает при итерировании по нему + час на создание нового массива в ArrayList при изменении размера будет увеличиваться при размерах самого списка.
И кстати, откуда данные о такой оценке производительности ArrayList по сравнению с Vector? Мне кажется, прирост в скорости достигается за счет отказа от принудительной синхронизации, главным образом?
Цитата: Zorkus
А в чем задача-то состоит?
Учится-учится-учится :)
Цитата: Zorkus
И кстати, откуда данные о такой оценке производительности ArrayList по сравнению с Vector? Мне кажется, прирост в скорости достигается за счет отказа от принудительной синхронизации, главным образом?
Данные из книги. Возможно они и не совсем достоверные. Я не експериментировал. Оптимизировать не надо. Я просто для своего розвития.
Цитата: bioflash
В принципе ты всегда можешь вызвать метод "ensureCapacity" и задать там соответственное значение "minCapacity" - вот и будет управление ёмкостью :)
Ну ето врапер надо делать чтоб помнить прежнюю емкость.