Операции отношения и проверки на равенство

Операции отношения (<, <=, >, >=, ==,!=) сравнивают первый операнд со вторым. Операнды должны быть арифметического типа. Результат операции — логического типа, равен true или false.

1 Фактически, учитывается только 5 младших битов второго операнда, если первый имеет тип int или uint, и 6 битов, если первый операнд имеет тип long или ulong.

Поразрядные логические операции

Поразрядные логические операции (&, |, ^) применяются к целочисленным опе­рандам и работают с их двоичными представлениями. При выполнении опера­ций операнды сопоставляются побитно (первый бит первого операнда с первым оптом второго, второй бит первого операнда со вторым битом второго и т. д.). Стандартные операции определены для типов int, uint, long и ulong.

При поразрядной конъюнкции, или поразрядном И (операция обозначается &), бит ре- зультата равен 1 только тогда, когда соответствующие биты обоих операндов равны 1.

При поразрядной дизъюнкции, или поразрядном ИЛИ (операция обозначается |), бит результата равен 1 тогда, когда соответствующий бит хотя бы одного из опе­рандов равен 1.

При поразрядном исключающем ИЛИ (операция обозначается ^) бит результата ра­вен 1 только тогда, когда соответствующий бит только одного из операндов равен 1.

Пример применения поразрядных логических операций представлен в листинге 3.6.

Листинг 3.6. Поразрядные логические операции

using System;

namespace ConsoleApplicationl

{

class Classl

{

static void Main()

{

Console.WriteLine(6 & 5); // Результат 4

Console.WriteLine(6 | 5); // Результат 7

Console.WriteLine(6 ^ 5); // Результат 3

}

}

}

Условные логические операции

Условные логические операции И (&&) и ИЛИ (||) чаще всего используются с опе­рандами логического типа. Результатом логической операции является true или false. Операции вычисляются по сокращенной схеме.

Результат операции логическое И имеет значение true, только если оба операнда имеют значение true. Результат операции логическое ИЛИ имеет значение true, если хотя бы один из операндов имеет значение true.

ВНИМАНИЕ -

Если значения первого операнда достаточно, чтобы определить результат опера­ции, второй операнд не вычисляется. Например, если первый операнд операции И равен false, результатом операции будет false независимо от значения второго операнда, поэтому он не вычисляется.

Условная операция

Условная операция (?:) — тернарная, то есть имеет три операнда. Ее формат


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: