Различия между списком Java и списком массивов

Java является динамическим языком и может использоваться на любой платформе. Он предоставляет список Java против ArrayList. List действует как интерфейс, а Array list является реализацией списка. Интерфейс списка состоит из методов. Эти методы включены в класс Array list с несколькими добавлениями методов. Основное различие между Java List и ArrayList состоит в том, что вам нужно создать ссылку на родительский интерфейс в первом и ссылку на класс, который реализует список. Это означает, что класс Array list является вторым классом. Давайте посмотрим на различия между Java List и ArrayList.

Сравнение лицом к лицу между списком Java и списком массивов (инфографика)

Ниже приведены 4 лучших сравнения между списком Java и списком массивов.

Ключевые различия между списком Java и списком массивов

Различия между списком Java и списком массивов объясняются в следующих пунктах:

  • Одно из основных отличий между списками Java List и Array List состоит в том, что list является интерфейсом, а Array list является стандартным классом коллекции.
  • Интерфейс Java List расширяет коллекцию, а список Array расширяет класс Abstract List, а также может реализовывать интерфейс List.
  • Интерфейс списка создает коллекцию элементов, которые хранятся в последовательности и могут быть доступны по номеру индекса. Список массивов, напротив, создает массив объектов, где массив может динамически увеличиваться при необходимости, а также уменьшаться.
  • Обе версии Java List и Array List предоставляют различные виды доступа к данным из списка. Эти методы позволяют получать элементы из массива в указанной позиции, а также удалять и уменьшать размер массива в случае списка Array.

Список сравнения списков массивов и списков массивов Java

Ниже приведена таблица сравнения между списком Java и списком массивов.

Основа сравнения между списком Java и списком массивовСписок JavaСписок массивов
Основная разницаСписок - это интерфейс, расширяющий коллекцию. Расширяя коллекцию, он объявляет свое поведение и сохраняет последовательность элементов. Список может иметь несколько дополнительных методов наряду с теми, которые присутствуют в Collection. Список также может содержать повторяющиеся элементы. Многие из методов в списке могут генерировать исключение неподдерживаемой операции, если коллекция не может быть изменена.Array List - это класс, который расширяет Abstract List и реализует интерфейс List. Обычные массивы, которые используются в Java, имеют фиксированную длину. Как только массив создан в Java, его размер не может быть увеличен или уменьшен. Списки массивов являются динамическими и могут быть созданы с начальным размером, а затем размер может быть увеличен при добавлении большего количества данных, а также может быть уменьшен при удалении любых данных.
СинтаксисСинтаксис для объявления списка выглядит следующим образом:
открытый интерфейс Список расширяет коллекцию
Синтаксис для объявления списка массивов следующий:
открытый класс ArrayList расширяет AbstractList реализует List, RandomAccess, Cloneable, Serializable
РаботаетСписок Java расширяет структуру Коллекции и использует пространство имен system.collection.generic. Список используется для получения объектов, которые связаны с их индексами. Список объектов может быть создан как показано ниже:
List a = new ArrayList ();
Как только объект создан пользователем, он может ограничить тип объекта, который может быть сохранен в списке. Объект может быть объявлен как безопасный тип. Это можно сделать, как показано ниже:
// Obj - это тип объекта, который нужно сохранить в List.List list = new List ();
Список массивов создается путем расширения AbstractList и реализует интерфейс списка. Пространство имен, используемое списком Array, является System. Коллекции. Список массивов рассматривается, когда пользователю необходимо создать динамический массив, содержащий объекты, которые можно добавлять и удалять во время выполнения.
ArrayList является классом и, следовательно, предоставляет несколько конструкторов. Эти конструкторы, как показано ниже:
1) ArrayList (): с помощью этого конструктора пользователь может создать пустой список массивов. (intacity): Главная особенность списка Array состоит в том, что он автоматически увеличивается, когда в список массивов добавляется больше элементов. Этот конструктор помогает создать список массивов с заданной начальной емкостью.
методыСписок предоставляет различные методы:
1) void add (int index, Object obj)
Этот метод помогает при вставке объектов. Это делается путем вызова списка по индексу, который передается. Любые существующие элементы смещены, и в результате данные не будут перезаписаны.
2) Объект get (int index)
Он возвращает объект, который хранится по этому индексу в вызывающей коллекции.
3) ListIterator listIterator ()
Эта функция возвращает итератор в начало списка вызова.
4) Удалить объект (int index)
Он используется для удаления элементов по указанному индексу позиции и возвращает удаленный элемент. Кроме того, результирующий список сжимается, а индексы последующих элементов уменьшаются на единицу.
5) Список подсписков (int start, int end)
Он вернет список от начала до конца, где начало - это начальный индекс, а конец - конечный. На элементы в списке также может ссылаться вызывающий объект.
Список массивов предоставляет следующие методы:
1) void add (int index, Object obj)
Он вставляет указанный элемент в указанную позицию и генерирует исключение IndexOutOfBoundsException, когда упомянутый индекс выходит за пределы диапазона.
2) Boolean содержит (Объект o)
Он ищет в списке и возвращает true, если указанный элемент присутствует. Точнее, если список содержит хотя бы один элемент, такой что o == null? e == null: o.equals (e)
3) Объект get (int index)
Он возвращает элемент, присутствующий в указанной позиции, и вызывает исключение IndexOutOfBoundsException, когда упомянутый индекс выходит за пределы диапазона.
4) void sureCapacity (int minCapacity)
Это увеличивает емкость экземпляра списка массивов. Он гарантирует, что он может содержать минимальное количество элементов, которое указано в качестве емкости.
5) Object () toArray ()
Возвращает массив, который состоит из всех элементов в списке. Возвращает NullPointerException, если массив равен нулю.

Вывод - список Java и список массивов

В результате список массивов является решением проблемы памяти статического массива. Когда пользователь использует список массивов, создается динамический массив, который может быть увеличен при необходимости. Обычный список расширяет класс коллекции. Кроме того, лучше увеличить емкость массива в начале, чем перераспределять память позже. Манипуляции в списке массивов медленны, так как необходимо смещение, если какой-либо элемент удален из списка. В списке вы можете выполнять различные операции позиционного доступа, поиска и просмотра диапазона.

Рекомендуемая статья

Это было руководство к основным различиям между Java List и Array List. Здесь мы также обсудим ключевые отличия Java List от Array List с инфографикой и таблицей сравнения. Вы также можете взглянуть на следующие статьи, чтобы узнать больше -

  1. Java Vector vs ArrayList - какая технология лучше?
  2. Java против JavaScript
  3. Scala против производительности Java: какой из них лучше
  4. Куча Java против стека
  5. C # Array vs List; Преимущества
  6. Полезное руководство по вопросам тестирования Java-интервью
  7. Разница между списком и множеством