Читаем C# 4.0 полное руководство - 2011 полностью

Возвращает логическое значение true, если в последовательности содержится указанный объект

Count

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

First

Возвращает первый элемент в последовательности

Last

Возвращает последний элемент в последовательности

Max

Возвращает максимальное значение в последовательности

Min

Возвращает минимальное значение в последовательности

Sum

Возвращает сумму значений в числовой последовательности

МетодCount уже демонстрировался ранее в этой главе. А в следующей программе демонстрируются остальные методы расширения, связанные с запросами.

// Использовать ряд методов расширения, определенных в классе Enumerable.

using System; using System.Linq;

class ExtMethods { static void Main {

int[] nums = { 3, 1, 2, 5, 4 };

Console .WriteLine ("Минимальное значение равно " + nums.MinO);

Console.WriteLine("Максимальное значение равно " + nums.Max);

Console.WriteLine("Первое значение равно " + nums.First);

Console.WriteLine("Последнее значение равно " + nums.Last);

Console.WriteLine("Суммарное значение равно " + nums.SumO);

Console.WriteLine("Среднее значение равно " + nums.Average);

if(nums.All(n => n > 0))

Console.WriteLine("Все значения больше нуля.");

if(nums.Any(n => (n % 2) == 0))

Console.WriteLine("По крайней мере одно значение является четным.");

if(nums.Contains(3))

Console.WriteLine("Массив содержит значение 3.");

}

}

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

Минимальное значение равно 1 Максимальное значение равно 5 Первое значение равно 3 Последнее значение равно 4 Суммарное значение равно 15 Среднее значение равно 3 Все значения больше нуля.

По крайней мере одно значение является четным Массив содержит значение 3.

Методы расширения, связанные с запросами, можно также использовать в самом запросе, основываясь на синтаксисе запросов, предусмотренном в С#. И в действительности это делается очень часто. Например, методAverage используется в приведенной ниже программе для получения последовательности, состоящей только из тех значений, которые оказываются меньше среднего всех значений в массиве.

// Использовать метод Average вместе с синтаксисом запросов.

using System; using System.Linq;

class ExtMethods2 { static void Main {

int[] nums = { 1, 2, 4, 8, 6, 9, 10, 3, 6, 7 };

var ItAvg = from n in nums

let x = nums.Average where n < x select n;

Console.WriteLine("Среднее значение равно " + nums.Average);

Console.Write("Значения меньше среднего: ");

// Выполнить запрос и вывести его результаты,foreach(int i in ItAvg) Console.Write(i + " ");

Console.WriteLine ;

}

}

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

Среднее значение равно 5.6 Значения меньше среднего: 12 4 3

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных