Выражения, инструкции и блоки в C#
В этой статье мы узнаем о выражениях, инструкциях, разнице между выражениями и инструкциями и о блоках.
Выражения, инструкции и блоки — кирпичики программы на C#. Мы использовали их с самого начала, когда написали первую программу, которая выводила на экран сообщение «Привет, мир!».
Выражения
Выражение — комбинация операндов (переменных, литералов и вызовов методов) и инструкций, результатом которой могут быть одиночные значения. В выражении должен быть хотя бы один операнд, но может не быть инструкций.
Рассмотрим примеры
double temperature;
temperature = 42.05;
Здесь 42.05
— это выражение, temperature = 42.05
— тоже.
int a, b, c, sum;
sum = a + b + c;
Здесь выражением является a + b + c
.
if (age>=18 && age<58)
Console.WriteLine("Может работать");
Здесь (age>=18 && age<58)
— это выражение, которое возвращает значение типа boolean. "Может работать"
— тоже выражение.
Инструкции
Инструкция — основная единица программы. Программа состоит из нескольких инструкций.
Пример
int age = 21;
Int marks = 90;
В примере выше обе строки — инструкции.
Типы инструкций
Инструкции объявления
Инструкции объявления используются для объявления и инициализации переменных.
char ch;
int maxValue = 55;
Обе строки в примере выше — инструкции объявления.
Инструкции выражений
Выражение, за которым идет точка с запятой, называется инструкцией выражений.
/* Объявление */
area = 3.14 * radius * radius;
/* Вызов метода — это выражение */
System.Console.WriteLine("Привет");
Здесь 3.14 * radius * radius
— это выражение, а area = 3.14 * radius * radius;
— инструкция выражений.
Таким образом, System.Console.WriteLine("Привет");
— это и выражение, и инструкция одновременно.
Другие типы
- Инструкции выбора (if...else, switch).
- Инструкции итерации (do, while, for, foreach).
- Инструкции перехода (break, continue, goto, return, yield).
- Инструкции обработки исключений (throw, try-catch, try-finally, try-catch-finally).
Их мы рассмотрим в других руководствах.
Больше об инструкциях можно узнать здесь.
Блоки
Блок — это совокупность нуля или более инструкций, заключенных в фигурные скобки.
Пример 1. Используем блоки с инструкциями
using System;
namespace Blocks
{
class BlockExample
{
public static void Main(string[] args)
{
double temperature = 42.05;
if (temperature > 32)
{ // Начало блока
Console.WriteLine("Температура в данный момент = {0}", temperature);
Console.WriteLine("Жарко");
} // Конец блока
}
}
}
Вывод:
Температура в данный момент = 42.05
Жарко
Здесь две инструкции внутри скобок:
Console.WriteLine("Температура в данный момент = {0}", temperature);
и
Console.WriteLine("Жарко");
Это и есть один блок.
Пример 2. Используем блоки без инструкций
В блоке может вообще не быть инструкций — как в этом примере.
using System;
namespace Blocks
{
class BlockExample
{
public static void Main(string[] args)
{
double temperature = 42.05;
if (temperature > 32)
{ // Начало блока
// Нет инструкций
} // Конец блока
}
}
}
Здесь фигурные скобки после if (temperature > 32)
содержат только комментарии и ни одной инструкции.