Содержание
- 2. Функция Повторно используемая часть кода Функция имеет имя Функция имеет ни одного, один или несколько аргументов
- 3. Функция Фактические параметры рассчитываются, их значения присваиваются формальным параметрам Далее в функции используются эти фактические значения
- 4. Пример Я хочу, чтобы у меня была функция, печатающая строки разными цветами Таким образом, мне нужна
- 5. Пример Но, что если я хочу ПОТОМ напечатать что-то НЕ цветное Хорошо бы запоминать старый цвет
- 6. Пример Итак, есть имя функции – PrintColor У нее два аргумента: Строка для печати Цвет строки
- 7. Текст функции void PrintColor(string value, ConsoleColor color) { ConsoleColor old = Console.ForegroundColor; Console.ForegroundColor = color; Console.WriteLine(value);
- 8. Пояснения Функции не нужно возвращать результат (поэтому она возвращает условное «пустое» - void значение) Старый цвет
- 9. Что улучшить Возвращать цвет печати на момент вызова функции (вернем старый цвет – old) Предположим, я
- 10. Улучшенная версия ConsoleColor printColor(string value, ConsoleColor color = ConsoleColor.Green) { ConsoleColor old = Console.ForegroundColor; Console.ForegroundColor =
- 11. Где помещать функции? В C# функций в чистом виде не так много. Как правило, у функции
- 12. Прототип функции и пример использования
- 13. Примеры Вызов “старой” функции печати Печатать с новым цветом Печатать с цветом по умолчанию.
- 14. Где размещать функции? Локально, по мере надобности (см. пример выше) Как метод класса (см. ниже)
- 15. Тонкость Метод main статический, поэтому методы также должны быть статическими (static)
- 16. Лямбда выражения Создают локальную функцию или цепочку функций, которые даже не имеют собственного имени Такие функции
- 17. Печать квадратов и кубов массива double []x= { 1, 2, 3, 4, 5, 6, 7, 8,
- 18. Пояснения x – массив десятичных дробей foreach (double d in x) – берет из массива х
- 19. Выбор данных Чтобы напечатать лишь часть данных, надо создать для них запрос с подходящим условием Программа
- 20. Запрос IEnumerable query = x.Where(number => number*number>10*number); Строка создает запрос данных типа double Where – условие
- 21. Запрос
- 22. Вывод фильтрованных данных foreach (double d in query) { StringBuilder stringBuilder = new StringBuilder(); PrintColor(stringBuilder.AppendFormat("x =
- 24. Скачать презентацию