Console.WriteLine();
// Отобразить список, используя целочисленные индексы.
Console.WriteLine("Содержимое списка по целочисленным индексам.");
for(int i=0; i < si.Count; i++)
Console.WriteLine(si.GetByIndex(i)) ;
Console.WriteLine() ;
// Показать целочисленные индексы элементов списка.
Console.WriteLine("Целочисленные индексы элементов списка.");
foreach(string str in с)
Console.WriteLine(str + ": " + si.IndexOfKey(str));
}
}
Ниже приведен результат выполнения этой программы.
Содержимое списка по индексатору.
автомашина: транспортное средство
здание: жилое помещение
книга: набор печатных слов
трактор: сельскохозяйственная машина
яблоко: съедобный плод
Содержимое списка по целочисленным индексам.
транспортное средство
жилое помещение
набор печатных слов
сельскохозяйственная машина
съедобный плод
Целочисленные индексы элементов списка.
автомашина: 0
здание: 1
книга: 2
трактор: 3
яблоко: 4
Как должно быть известно большинству читателей,
Класс коллекции, поддерживающий стек, носит название Stack
. В нем реализуются интерфейсы ICollection
, IEnumerable
и ICloneable
. Этот класс создает динамическую коллекцию, которая расширяется по мере потребности хранить в ней вводимые элементы. Всякий раз, когда требуется расширить такую коллекцию, ее емкость увеличивается вдвое.
В классе Stack
определяются следующие конструкторы.
public Stack()
public Stack(int
public Stack(ICollection
В первой форме конструктора создается пустой стек, во второй форме — пустой стек, первоначальный размер которого определяет первоначальная емкость, задаваемая параметром
В классе Stack
определяется ряд собственных методов, помимо тех, что уже объявлены в интерфейсах, которые в нем реализуются. Некоторые из наиболее часто используемых методов этого класса приведены в табл. 25.7. Эти методы обычно применяются следующим образом. Для того чтобы поместить объект на вершине стека, вызывается метод Push()
. А для того чтобы извлечь и удалить объект из вершины стека, вызывается метод Pop()
. Если же объект требуется только извлечь, но не удалить из вершины стека, то вызывается метод Реек()
. А если вызвать метод Pop()
или Реек()
, когда вызывающий стек пуст, то сгенерируется исключение InvalidOperationException
.
Таблица 25.7. Наиболее часто используемые методы, определенные в классе Stack
Метод - Описание
public virtual void Clear() - Устанавливает свойство Count равным нулю, очищая, по существу, стек
public virtual bool Contains (object
public virtual object Peek() - Возвращает элемент, находящийся на вершине стека, но не удаляет его
public virtual object Pop() - Возвращает элемент, находящийся на вершине стека, удаляя его по ходу дела
public virtual void Push (object
public static Stack Synchronized(Stack
public virtual object[] ToArray() - Возвращает массив, содержащий копии элементов вызывающего стека