Arraylist и Arrays - PullRequest
       3

Arraylist и Arrays

0 голосов
/ 20 января 2012

В чем разница между

ArrayList<Object> al = new ArrayList<Object>(100);

и

Object[] ar = new Object[100];

Есть ли какая-либо разница во внутренней реализации, т.е. в выделении памяти?Зарезервированы ли оба из них 100 слотов в памяти?

Ответы [ 4 ]

5 голосов
/ 20 января 2012

An ArrayList<Object> имеет поддержку Object[]. Резервный массив будет «изменен» (будет создан новый массив и скопированы старые данные), если вы, возможно, переполните размер и возможны дополнения.

Реализации списков также предоставляют дополнительные методы для работы с ними.

Другое дело, что вы можете использовать Generics (1.5) со списками.

0 голосов
/ 20 января 2012

ArrayList может динамически увеличиваться или уменьшаться во время выполнения, а массивы - нет.ArrayList - это список, реализованный с использованием массива.Он предоставляет вам множество функций (в основном, операций со списками), которые массив не предоставляет.

0 голосов
/ 20 января 2012

нет, оба не значит одно и то же в ArrayList < Object > al = new ArrayList< Object >(100); просто определите initialCapacity, в дальнейшем вы можете добавить n элементов но в Object[] ar = new Object[100]; вы не можете добавлять элементы после 100 size

0 голосов
/ 20 января 2012

ArrayList - это реализация List , которая использует обычный массив для хранения и извлечения объектов, добавленных в список. Последний (Object []) является обычным массивом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...