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)
|