Главная

Java

Collections Framework


ArrayList:

ArrayList - автоматически расширяемый массив.

максимальный размер ArrayList ограничен значением int !!!
при удалении элементов текущая величина capacity не уменьшается, что может привести к своеобразным утечкам памяти. Поэтому не стоит пренебрегать методом trimToSize()
Java имеет ограничение на максимальный размер массива, который может выделить ваша программа. Точное ограничение зависит от платформы, но обычно составляет от 1 до 2,1 миллиарда элементов.
Когда вы сталкиваетесь с java.lang.OutOfMemoryError: Запрашиваемый размер массива превышает ограничение виртуальной машины , это означает, что приложение, аварийно завершающее работу с ошибкой, пытается выделить массив больше, чем может поддерживать виртуальная машина Java



Метод Arraylist LinkedList
*.get(index) O(1) O(n)
*.add(E) O(n) O(1)
*.add(E, index) O(n) O(n)
*.remove(index) O(n) O(n)
Iterator.remove() O(n) O(1)
Iterator.add(E) O(n) O(1)

Полезные ссылки: