Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1-25.docx
Скачиваний:
58
Добавлен:
15.06.2014
Размер:
349.81 Кб
Скачать

35 Использование классов List и ArrayList для организации массивов-списков.

List

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

Методы класса List

Имя Описание

AddДобавляет объект в конец коллекцииList.

AddRangeДобавляет элементы указанной коллекции в конец спискаList.

AsReadOnlyВозвращает для текущей коллекции оболочкуIList, доступную только для чтения.

BinarySearchПерегружен. Использует алгоритм двоичного поиска для нахождения определенного элемента в отсортированном спискеListили в его части.

ClearУдаляет все элементы из коллекцииList.

ContainsОпределяет, входит ли элемент в составList.

ConvertAll<(Of<(TOutput>)>) Преобразует элементы текущего спискаListв другой тип и возвращает список преобразованных элементов.

CopyToПерегружен. Копирует списокListили его часть в массив.

EqualsОпределяет, равен ли заданный объектObjectтекущему объектуObject. (Унаследовано отObject.)

ExistsОпределяет, содержит лиListэлементы, удовлетворяющие условиям указанного предиката.

FinalizeПозволяет объектуObjectпопытаться освободить ресурсы и выполнить другие операции очистки, перед тем как объектObjectбудет утилизирован в процессе сборки мусора. (Унаследовано отObject.)

FindВыполняет поиск элемента, удовлетворяющего условиям указанного предиката, и возвращает первое найденное вхождение в пределах всего спискаList.

FindAllИзвлекает все элементы, удовлетворяющие условиям указанного предиката.

FindIndexПерегружен. Выполняет поиск элемента, удовлетворяющего условиям указанного предиката, и возвращает отсчитываемый от нуля индекс первого найденного вхождения в пределах всего спискаListили его части.

FindLastВыполняет поиск элемента, удовлетворяющего условиям указанного предиката, и возвращает последнее найденное вхождение в пределах всего спискаList.

FindLastIndexПерегружен. Выполняет поиск элемента, удовлетворяющего условиям указанного предиката, и возвращает отсчитываемый от нуля индекс последнего найденного вхождения в пределах всего спискаListили его части.

ForEachВыполняет указанное действие с каждым элементом спискаList.

GetEnumeratorВозвращает перечислитель, осуществляющий перебор элементов спискаList.

GetHashCodeИграет роль хэш-функции для определенного типа. (Унаследовано отObject.)

GetRangeСоздает неполную копию диапазона элементов исходного спискаList.

GetTypeВозвращает объектTypeдля текущего экземпляра. (Унаследовано отObject.)

IndexOfПерегружен. Возвращает отсчитываемый от нуля индекс первого вхождения значения в спискеListили в его части.

InsertДобавляет элемент в списокListв позиции с указанным индексом.

InsertRangeВставляет элементы коллекции в списокListв позиции с указанным индексом.

LastIndexOfПерегружен. Возвращает отсчитываемый от нуля индекс последнего вхождения значения в спискеListили в его части.

MemberwiseCloneСоздает неполную копию текущего объектаObject. (Унаследовано отObject.)

RemoveУдаляет первое вхождение указанного объекта из коллекцииList.

RemoveAllУдаляет все элементы, удовлетворяющие условиям указанного предиката.

RemoveAtУдаляет элемент спискаListс указанным индексом.

RemoveRangeУдаляет диапазон элементов из спискаList.

ReverseПерегружен. Изменяет порядок элементов в спискеListили в его части на обратный.

SortПерегружен. Сортирует элементы в спискеListили в его части.

ToArrayКопирует элементы спискаListв новый массив.

ToStringВозвращает объектString, который представляет текущий объектObject. (Унаследовано отObject.)

TrimExcessяадает емкость, равную фактическому числу элементов в спискеList, если это число меньше порогового значения.

TrueForAllОпределяет, все ли элементы спискаListудовлетворяют условиям указанного предиката.

ArrayList

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

В классе ArrayListопределяется ряд собственных методов, помимо тех, что уже объявлены в интерфейсах, которые в нем реализуются. Коллекцию классаArrayListможно отсортировать, вызвав методSort(). В этом случае поиск в отсортированной коллекции с помощью методаBinarySearch() становится еще более эффективным. Содержимое коллекции типаArrayListможно также обратить, вызвав методReverse(). Некоторые из наиболее часто используемых методов классаArrayListперечислены ниже:

AddRange()

Добавляет элементы из коллекции в конец вызывающей коллекции типа ArrayList

BinarySearch()

Выполняет поиск в вызывающей коллекции значения. Возвращает индекс найденного элемента. Если искомое значение не найдено, возвращает отрицательное значение. Вызывающий список должен быть отсортирован

СоруТо()

Копирует содержимое вызывающей коллекции в массив, который должен быть одномерным и совместимым по типу с элементами коллекции

FixedSize()

Заключает коллекцию в оболочку типа ArrayListс фиксированным размером и возвращает результат. Возвращает часть вызывающей коллекции типаArrayList. Часть возвращаемой коллекции начинается с элемента, указываемого по индексу, и включает количество элементов, определяемое параметромcount. Возвращаемый объект ссылается на те же элементы, что и вызывающий объект.

IndexOf()

Возвращает индекс первого вхождения объекта в вызывающей коллекции. Если искомый объект не обнаружен, возвращает значение -1

InsertRange()

Вставляет элементы коллекции в вызывающую коллекцию, начиная с элемента, указываемого по индексу

Readonly()

Заключает коллекцию в оболочку типа ArrayList, доступную только для чтения, и возвращает результат

RemoveRange()

Удаляет часть вызывающей коллекции, начиная с элемента, указываемого по индексу index, и включая количество элементов, определяемое параметромcount

Sort()

Сортирует вызывающую коллекцию по нарастающей

В классе ArrayListподдерживается также ряд методов, оперирующих элементами коллекции в заданных пределах. Так, в одну коллекцию типаArrayListможно вставить другую коллекцию, вызвав методInsertRange(). Для удаления из коллекции элементов в заданных пределах достаточно вызвать методRemoveRange(). А для перезаписи элементов коллекции типаArrayListв заданных пределах элементами из другой коллекции служит методSetRange(). И наконец, элементы коллекции можно сортировать или искать в заданных пределах, а не во всей коллекции.

Соседние файлы в предмете Программирование