Иллюстрированный самоучитель по Visual Basic .NET

Классы коллекций в .NET Framework. ArrayList.

Таблица 4.3. Важнейшие члены класса ArrayList.

Имя Описание
CopyTo Копирует объект ArrayList (полностью или частично) в одномерный массив начиная с заданного индекса массива-приемника
Contains Проверяет, присутствует ли в объекте ArrayList заданный элемент
Clear Удаляет все элементы из объекта ArrayList
Capacity Получает или задает максимальное количество элементов, на которое рассчитан объект ArrayList. Конечно, вместимость массива изменяется по мере добавления новых элементов, но по соображениям эффективности вместимость наращивается большими "порциями"
BinarySearch Выполняет бинарный поиск заданного элемента в отсортированном динамическом массиве или в его части
AddRange Позволяет добавить содержимое другого массива (динамического или обычного) в текущий динамический массив. В сочетании с методом InsertRange позволяет быстро объединять массивы с использованием Arraylist в качестве вспомогательного класса
Add Добавляет новый объект в конец динамического массива
Count Возвращает количество элементов, фактически хранящихся в массиве
GetRange Возвращает другой объект ArrayList, содержащий последовательность смежных элементов текущего объекта
IndexOf Возвращает индекс первого вхождения заданного элемента в динамический массив. Следует помнить, что индексация в классе ArrayList (как и в обычных массивах) начинается с нуля
Insert Вставляет элемент в заданную позицию объекта ArrayList
InsertRange Вставляет элементы коллекции в объект ArrayList начиная с заданной позиции
Item Получает или задает значение элемента, находящегося в заданной позиции. Является свойством по умолчанию для класса ArrayList
LastlndexOf Возвращает индекс последнего вхождения заданного элемента в динамический массив (индексация начинается с нуля)
Length Возвращает количество элементов в динамическом массиве
Readonly Возвращает новый объект ArrayList, доступный только для чтения (проверка возможности записи в динамический массив осуществляется методом IsReadOnly)
Remove Удаляет из массива первое вхождение заданного элемента
RemoveAt Удаляет элемент, находящийся в заданной позиции
RemoveRange Удаляет последовательность смежных элементов
RepeatRange Возвращает объект ArrayList, содержащий заданное количество дубликатов одного элемента
Reverse Переставляет элементы в объекте ArrayList в противоположном порядке (во всем массиве или в его части)
SetRange Копирует элементы коллекции поверх интервала элементов ArrayList
Sort Сортирует элементы в объекте ArrayList (во всем массиве или в его части)
ToArray Копирует элементы из объекта ArrayList в массив
TrimToSize Используется после завершения операций с объектом ArrayList; вместимость динамического массива уменьшается до фактического количества элементов, хранящихся в нем в настоящий момент (разумеется, позднее массив снова может увеличиться)

Среди свойств класса ArrayList наибольший интерес представляет свойство Item, которое представляет элемент с заданным индексом. Пример:

Consolе.WriteLinediiyList.Item(1))

Свойство Item является свойством по умолчанию класса ArrayList. Это означает, что при использовании его имя может не указываться, Например, приведенная выше команда эквивалентна следующей команде:

Console. WriteLine(myList(1))

В разделе "Свойства" настоящей главы вы узнаете, чем отличаются свойства по умолчанию в VB.NET и прежних версиях VB.

В следующем коротком примере массив ArrayList используется для ввода и сохранения неизвестного количества строк. При этом удается обойтись без команды ReDim Preserve, необходимой при работе с обычными массивами.

Option Strict On Module Modulel
Sub Main()
Dim myList As New ArrayList()
Dim theData As String
Console.Write("Please enter each item and hit Enter key,"_
& "enter ZZZ when done:") theData =Console.ReadLine()
Do Until theData ="ZZZ" myList.Add(theData)
Console.WriteC'Please enter each item and hit Enter,"_
& "enter ZZZ when done:") theData =Console.ReadLine() Loop
Console.WriteLine("You entered "SmyList.Count() & "ITEMS.")
Console.ReadLine()
End Sub
End Module
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.