Разница между ArrayList и Array в C # (с таблицей)

Оглавление:

Anonim

В C #, как известно, наиболее часто используемыми типами данных являются array и ArrayList. Массив - это базовая функциональность языка программирования C #, тогда как Arraylist в C # - это коллекция.

И Array, и ArrayList используются для хранения данных, и нет никаких ограничений на какие-либо типы данных, которые должны быть сохранены.

ArrayList против массива в C #

Разница между Array и ArrayList заключается в том, что массив хранит данные одного типа данных, тогда как списки массивов могут хранить данные разных типов.

Для доступа к данным из ArrayList необходимо выполнить цикл с использованием объекта, тогда как в массиве вы можете легко получить к ним доступ без какого-либо объекта.

Таблица сравнения между ArrayList и Array в C # (в табличной форме)

Параметр сравнения ArrayList Множество
Тип ArrayList не общего типа Массив строго типизирован. Могут быть сохранены только значения одного типа данных
Количество элементов Он динамический, поэтому можно хранить любое количество типов данных. Можно добавить только фиксированное количество элементов
представление Это снижает производительность, так как используется упаковка и распаковка. У него лучшая производительность.
NULL значение Может принимать значение NULL Это не
Класс Он использует статический класс Он использует пространство имен System.collection

Что такое ArrayList в C #?

Списки массивов инициализируются с помощью интерфейса списка. Считается одним из самых гибких данных на языке C3. Коллекция в языках программирования - это специальный класс, который хранит данные и позволяет программистам их извлекать.

Пример

Использование System.collection;

ArrayList a = новый ArrayList ();

a.add (1, «привет»);

a.add (4);

a.add (8.23);

a.add (ноль);

Некоторые функции, которые используются для взаимодействия с данными, хранящимися в arrayylist.

Что такое массив в C #?

Массив - это тип данных, в котором программист может хранить данные одного типа и фиксированной длины. Значение длины и данных не может быть изменено во время выполнения. Всем элементам массива присваивается значение индекса, а индекс массива равен нулю.

Следовательно, значение по умолчанию - ноль индекса для первого элемента в массиве. Синтаксис объявления и определения массива в C # следующий. Поскольку массив является эталонным типом данных, его память выделяется в динамической памяти.

Int [] array = new int [] {10, 20, 30, 40};

10 20 30 40 данных

0 1 2 3 Индексы

Некоторые важные моменты о массивах.

Основные различия между ArrayList и Array в C #

  1. Размер массива фиксирован, и он содержит последовательную коллекцию всех элементов одного типа. В то время как размер списка массивов не фиксирован и увеличивается с 2 ^ n.
  2. Размерность массива и длина каждого измерения инициализируются при создании массива. Во время выполнения невозможно изменить значение длины массива. Для ArrayList значение длины списка массивов может изменяться динамически.
  3. Индекс первого элемента в массиве 0 и индекс последнего элемента равен n-1, где n - длина размера массива.
  4. ArrayList содержит элементы разных типов данных, тогда как массив содержит данные схожих типов данных. Например, если Array имеет целочисленный тип, тогда в массиве могут храниться только целые числа.
  5. Массив - это строго типизированный тип данных, и его эффективность лучше, чем у ArrayList. Поскольку в Arraylist требуется распаковка и бокс, следовательно, он менее эффективен.
  6. Размер ArrayList увеличивается автоматически, поэтому вам нужно указать любой размер.

Вывод

Array и Arraylist - это типы данных, которые позволяют разработчику хранить несколько элементов одного и того же типа данных в массиве и разных типов данных в списке массивов. Различные разработчики действительно используют Arraylist, поскольку у Arraylist есть разные методы, которых нет ни в одном другом типе данных, таких как Repeat (), Reverse (), BinarySearch и многие другие.

Массив считается типом данных фиксированного размера и к нему легко получить доступ, тогда как в ArrayList нужно использовать объект и использовать оператор точки для доступа к элементам, хранящимся в типе данных.

Что ж, если разработчику нужно хранить один и тот же тип элемента и иметь фиксированный размер, тогда он должен использовать массив, в противном случае следует использовать ArrayList.

Оба они выполняют одинаковую работу по хранению элементов, но основное различие - это фиксированный размер и динамический размер. Поэтому, если вы хотите хранить разные типы данных, такие как null, char или любые другие, вам следует использовать ArrayList, поскольку это неуниверсальный тип данных.

Если вы хотите ограничить пользователя вставкой различных типов данных в структуру данных, тогда следует использовать массив, поскольку он позволяет вставлять в массив только один и тот же тип данных.

Разница между ArrayList и Array в C # (с таблицей)