Транспортное средство
Жилое помещение
Набор печатных слов
Съедобный фрукт
--Целочисленные индексы элементов списка.
Автомобиль: 0
Здание: 1
Книга: 2
Яблоко: 3
Класс Stack
Стек представляет собой список, добавление и удаление элементов к которому осуществляется по принципу "последним пришел — первым обслужен" (last-in, first-out — LIFO).
Стек — это динамическая коллекция, которая при необходимости увеличивается, чтобы принять для хранения новые элементы.
Стек реализует интерфейсы:
• ICollection,
• IEnumerable,
• ICloneable.
Методы, определенные в классе Stack
Метод | Описание |
public virtual bool Contains(object value) | Возвращает значение true, если объект value содержится в вызывающем стеке. В противном случае возвращает значение false |
public virtual void Clear() | Устанавливает свойство Count равным нулю, тем самым эффективно очищая стек |
public virtual object Peek() | Возвращает элемент, расположенный в вершине стека, но не удаляет его |
public virtual object Pop() | Возвращает элемент, расположенный в вершине стека, и удаляет его |
public virtual void Push(object value) | Помещает объект value в стек |
public static Stack Synchronized(Stack stk) | Возвращает синхронизированную версию stack-списка, переданного в параметре stk |
public virtual object[ ] ToArray() | Возвращает массив, который содержит копии элементов вызывающего стека |
// Демонстрация использования класса Stack.
using System;
using System. Collections;
Class StackDemo
{
Public static void Main()
{
int a;
Stack st = new Stack();
st.Push(22);
st.Push(65);
st.Push(91);
foreach (int i in st) Console.Write(i + " ");
Console.WriteLine();
Try
{
a = (int)st.Pop(); Console.WriteLine(a);
a = (int)st.Pop(); Console.WriteLine(a);
a = (int)st.Pop(); Console.WriteLine(a);
a = (int)st.Pop(); Console.WriteLine(a);
}
Catch (InvalidOperationException)
{
Console.WriteLine("Стек пуст.");
}
}
}
Хранение битов с помощью класса BitArray
Класс BitArray предназначен для поддержки коллекции битов. Поскольку его назначение состоит в хранении битов, а не объектов, то и его возможности отличаются от возможностей других коллекций. Тем не менее, класс BitArray поддерживает базовый набор средств коллекции посредством реализации интерфейсов iCollection, lEnumerable и ICloneable.
С помощью этого конструктора можно создать BitArray-коллекцию заданного размера:
Public BitArray (int size)
Здесь параметр size задает количество битов в коллекции, причем все они инициализируются значением false.
public BitArray (bool[] bits)
В этом случае каждый элемент массива bits становится битом BitArray-коллекции. При этом каждый бит в коллекции соответствует элементу массива bits. Более того, порядок элементов массива bits аналогичен порядку битов в коллекции.
BitArray-коллекцию можно также создать из массива байтов. Для этого используйте следующий конструктор:
public BitArray (byte[] bits)
Здесь битами коллекции становится набор битов, содержащийся в массиве bits, причем элемент bits[0] определяет первые восемь битов, элемент bits[1] — вторые восемь битов и т.д.
Дата добавления: 2019-02-08; просмотров: 607;