C# 4.0 полное руководство - 2011
Шрифт:
зывающую коллекцию, начиная с элемента, указы
collection)
ваемого по индексу index
public i tern)
int LastlndexOf(T
Возвращает индекс последнего вхождения элемента item в вызывающей коллекции. Если искомый элемент не обнаружен, возвращается значение -1
public
void RemoveRange(int
Удаляет
index,
int count)
элемента, указываемого по индексу index, и включая количество элементов, определяемое параметром count
public
void Reverse
Располагает элементы вызывающей коллекции в обратном порядке
public
void Reverse(int
Располагает в обратном порядке часть вызываю
index,
int count)
щей коллекции, начиная с элемента, указываемого по индексу index, и включая количество элементов, определяемое параметром count
public
void Sort
Сортирует вызывающую коллекцию по нарастающей
Окончание табл. 25.15
Метод
Описание
public void
Сортирует вызывающую коллекцию, используя
Sort(IComparer<T> comparer)
для сравнения способ, задаваемый параметром comparer. Если параметр comparer имеет пустое значение, то для сравнения используется способ, выбираемый по умолчанию
public void
Сортирует вызывающую коллекцию, используя для
Sort(Comparison<T> comparison)
сравнения указанный делегат
public void Sort(int index,
Сортирует вызывающую коллекцию, используя
int count, IComparer<T>
для
comparer)
comparer. Сортировка начинается с элемента, указываемого по индексу index, и включает количество элементов, определяемых параметром count. Если параметр comparer имеет пустое значение, то для сравнения используется способ, выбираемый по умолчанию
public T [ ] ToArrayO
Возвращает массив, содержащий копии элементов вызывающего объекта
public void TrimExcess
Сокращает емкость вызывающей коллекции таким образом, чтобы она не превышала 10% от количества элементов, хранящихся в ней на данный момент
В классе List<T> определяется также собственное свойство Capacity, помимо тех, что уже объявлены в интерфейсах, которые в нем реализуются. Это свойство объявляется следующим образом.
public int Capacity { get; set; }
Свойство Capacity позволяет установить и получить емкость вызывающей коллекции в качестве динамического массива. Эта емкость равна количеству элементов, которые может содержать коллекция до ее вынужденного расширения. Такая коллекция расширяется автоматически, и поэтому задавать ее емкость вручную необязательно. Но из соображений эффективности это иногда можно сделать, если заранее известно количество элементов коллекции. Благодаря этому исключаются издержки на выделение дополнительной памяти.
В классе List<T> реализуется также приведенный ниже индексатор, определенный в интерфейсе IList<T>.
public Т this[int index] { get; set; }
С помощью этого индексатора устанавливается и получается значение элемента коллекции, указываемое по индексу index.
В приведенном ниже примере программы демонстрируется применение класса List<T>. Это измененный вариант примера, демонстрировавшего ранее класс ArrayList. Единственное изменение, которое потребовалось для этого, заключалось в замене класса ArrayList классом List, а также в использовании параметров обобщенного типа.
// Продемонстрировать применение класса List<T>. using System;
using System.Collections.Generic;
class GenListDemo { static void Main {
// Создать коллекцию в виде динамического массива.
List<char> 1st = new List<char>;
Console.WriteLine("Исходное количество элементов: " + lst.Count);
Console.WriteLine;
Console.WriteLine("Добавить 6 элементов");