Герберт Шилдт - C# 4.0: полное руководство

Тут можно читать онлайн Герберт Шилдт - C# 4.0: полное руководство - бесплатно ознакомительный отрывок. Жанр: comp-programming, издательство ООО И.Д. Вильямс, год 2011. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    C# 4.0: полное руководство
  • Автор:
  • Жанр:
  • Издательство:
    ООО И.Д. Вильямс
  • Год:
    2011
  • Город:
    Москва -- Киев
  • ISBN:
    978-5-8459-1684-6
  • Рейтинг:
    3.93/5. Голосов: 141
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Герберт Шилдт - C# 4.0: полное руководство краткое содержание

C# 4.0: полное руководство - описание и краткое содержание, автор Герберт Шилдт, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки.


Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

C# 4.0: полное руководство - читать онлайн бесплатно ознакомительный отрывок

C# 4.0: полное руководство - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Герберт Шилдт
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Метод -Описание

public T Peek() -Возвращает элемент, находящийся на вершине стека, но не удаляет его

public T Pop() -Возвращает элемент, находящийся на вершине стека, удаляя его в процессе работы

public void Push(T item) - Помещает элемент item в стек

Public T[] ToArray() -Возвращает массив, содержащий копии элементов вызывающего стека

public void TrimExcess() -Сокращает избыточную емкость вызывающей коллекции в виде стека

В приведенном ниже примере программы демонстрируется применение класса Stack.

// Продемонстрировать применение класса Stack.

using System;

using System.Collections.Generic;

class GenStackDemo {

static void Main() {

Stack st = new Stack();

st.Push("один");

st.Push("два");

st.Push("три");

st.Push("четыре");

st.Push("пять");

while(st.Count > 0) {

string str = st.Pop();

Console.Write(str + " ");

}

Console.WriteLine(); }

}

При выполнении этой программы получается следующий результат.

пять четыре три два один

Класс Queue

Класс Queueявляется обобщенным эквивалентом класса необобщенной коллекции Queue. В нем поддерживается очередь в виде списка, действующего по принципу "первым пришел — первым обслужен". В этом классе реализуются интерфейсы ICollection, IEnumerableи IEnumerable. Кроме того, в классе Queueнепосредственно реализуются методы Clear(), Contains()и CopyTo(), определенные в интерфейсе ICollection. А методы Add()и Remove()в этом классе не поддерживаются, как, впрочем, и свойство IsReadOnly. Коллекция класса Queueимеет динамический характер, расширяясь по мере необходимости, чтобы вместить все элементы, которые должны храниться в ней. В классе Queueопределяются следующие конструкторы.

public Queue()

public Queue(int capacity)

public Queue(IEnumerable collection)

В первой форме конструктора создается пустая очередь с выбираемой по умолчанию первоначальной емкостью, а во второй форме — пустая очередь, первоначальный размер которой определяет параметр capacity. И в третьей форме создается очередь, содержащая элементы коллекции, определяемой параметром collection. Ее первоначальная емкость равна количеству указанных элементов.

В классе Queueопределяется ряд собственных методов, помимо тех, что уже объявлены в интерфейсах, которые в нем реализуются, а также в интерфейсе ICollection. Некоторые из наиболее часто используемых методов этого класса перечислены в табл.25.21. Как и в классе Queue, эти методы обычно применяются следующим образом. Для того чтобы поместить объект в очередь, вызывается метод Enqueue(). Если требуется извлечь и удалить первый объект из начала очереди, то вызывается метод Dequeue(). Если же требуется извлечь, но не удалять следующий объект из очереди, то вызывается метод Реек(). А если методы Dequeue()и Реек()вызываются, когда очередь пуста, то генерируется исключение InvalidOperationException.

Таблица 25.21. Методы, определенные в классе Queue

Метод - Описание

public T Dequeue() - Возвращает объект из начала вызывающей очереди. Возвращаемый объект удаляется из очереди

public void Enqueue (Т item) - Добавляет элемент item в конец очереди

public T Реек() -Возвращает элемент из начала вызывающей очере_ди, но не удаляет его

public virtual Т[] ToArray() -Возвращает массив, который содержит копии элементов из вызывающей очереди

public void TrimExcess() - Сокращает избыточную емкость вызывающей коллекции в виде очереди

В приведенном ниже примере демонстрируется применение класса Queue.

// Продемонстрировать применение класса Queue.

using System;

using System.Collections.Generic;

class GenQueueDemo {

static void Main() {

Queue q = new Queue();

q.Enqueue(98.6);

q.Enqueue(212.0);

q.Enqueue(32.0);

q.Enqueue(3.1416);

double sum = 0.0;

Console.Write("Очередь содержит: ");

while(q.Count > 0) {

double val = q.Dequeue();

Console.Write(val + " ");

sum += val;.

}

Console.WriteLine("\nИтоговая сумма равна " +• sum);

}

}

Вот к какому результату приводит выполнение этой программы.

Очередь содержит: 98.6 212 32 3.1416

Итоговая сумма равна 345.7416

Класс HashSet

В классе HashSetподдерживается коллекция, реализующая множество. Для хранения элементов этого множества в нем используется хеш-таблица. В классе HashSetреализуются интерфейсы ICollection, ISet, IEnumerable, IEnumerable, ISerializable, а также IDeserializationCallback. В коллекции типа HashSetреализуется множество, все элементы которого являются уникальными. Иными словами, дубликаты в таком множестве не допускаются. Порядок следования элементов во множестве не указывается. В классе HashSetопределяется полный набор операций с множеством, определенных в интерфейсе I$et, включая пересечение, объединение и разноименность. Благодаря этому класс HashSetоказывается идеальным средством для работы с множествами объектов, когда порядок расположения элементов во множестве особого значения не имеет. Коллекция типа HashSetимеет динамический характер и расширяется по мере необходимости, чтобы вместить все элементы, которые должны в ней храниться.

Ниже перечислены наиболее употребительные конструкторы, определенные в классе HashSet.

public HashSet()

public HashSet(IEnumerable collection)

public HashSet(IEqualityCompare comparer)

public HashSet(IEnumerable collection, IEqualityCompare comparer)

В первой форме конструктора создается пустое множество, а во второй форме — множество, состоящее из элементов указываемой коллекции collection. В третьей форме конструктора допускается указывать способ сравнения с помощью параметра comparer. А в четвертой форме создается множество, состоящее из элементов указываемой коллекции collection , и используется заданный способ сравнения comparer. Имеется также пятая форма конструктора данного класса, в которой допускается инициализировать множество последовательно упорядоченными данными.

В классе HashSetреализуется интерфейс ISet, а следовательно, в нем предоставляется полный набор операций со множествами. В этом классе предоставляется также метод RemoveWhere(), удаляющий из множества элементы, не удовлетворяющие заданному условию, или предикату.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Герберт Шилдт читать все книги автора по порядку

Герберт Шилдт - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




C# 4.0: полное руководство отзывы


Отзывы читателей о книге C# 4.0: полное руководство, автор: Герберт Шилдт. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x