Neste artigo, aprenderemos tudo sobre os diferentes tipos de operadores na linguagem de programação C # e como usá-los.
Operadores são símbolos usados para realizar operações em operandos. Operandos podem ser variáveis e / ou constantes.
Por exemplo , in 2+3
, +
é um operador usado para realizar a operação de adição, enquanto 2
e 3
são operandos.
Os operadores são usados para manipular variáveis e valores em um programa. C # oferece suporte a vários operadores que são classificados com base no tipo de operações que executam.
1. Operador de Atribuição Básica
Operador de atribuição básica (=) é usado para atribuir valores a variáveis. Por exemplo,
duplo x; x = 50,05;
Aqui, 50,05 é atribuído a x.
Exemplo 1: Operador de Atribuição Básica
using System; namespace Operator ( class AssignmentOperator ( public static void Main(string() args) ( int firstNumber, secondNumber; // Assigning a constant to variable firstNumber = 10; Console.WriteLine("First Number = (0)", firstNumber); // Assigning a variable to another variable secondNumber = firstNumber; Console.WriteLine("Second Number = (0)", secondNumber); ) ) )
Quando executamos o programa, a saída será:
Primeiro número = 10 segundos número = 10
Este é um exemplo simples que demonstra o uso do operador de atribuição.
Você deve ter notado o uso de chaves ( )
no exemplo. Vamos discutir sobre eles na formatação de strings. Por enquanto, lembre-se de que (0)
é substituída pela primeira variável que segue a string, (1)
é substituída pela segunda variável e assim por diante.
2. Operadores aritméticos
Operadores aritméticos são usados para realizar operações aritméticas, como adição, subtração, multiplicação, divisão, etc.
Por exemplo,
int x = 5; int y = 10; int z = x + y; // z = 15Operadores aritméticos C #
Operador | Nome do operador | Exemplo |
---|---|---|
+ | Operador de adição | 6 + 3 avalia para 9 |
- | Operador de subtração | 10 - 6 avalia para 4 |
* | Operador de multiplicação | 4 * 2 avalia para 8 |
/ | Operador de Divisão | 10/5 avalia para 2 |
% | Operador Módulo (Restante) | 16% 3 avalia para 1 |
Exemplo 2: operadores aritméticos
using System; namespace Operator ( class ArithmeticOperator ( public static void Main(string() args) ( double firstNumber = 14.40, secondNumber = 4.60, result; int num1 = 26, num2 = 4, rem; // Addition operator result = firstNumber + secondNumber; Console.WriteLine("(0) + (1) = (2)", firstNumber, secondNumber, result); // Subtraction operator result = firstNumber - secondNumber; Console.WriteLine("(0) - (1) = (2)", firstNumber, secondNumber, result); // Multiplication operator result = firstNumber * secondNumber; Console.WriteLine("(0) * (1) = (2)", firstNumber, secondNumber, result); // Division operator result = firstNumber / secondNumber; Console.WriteLine("(0) / (1) = (2)", firstNumber, secondNumber, result); // Modulo operator rem = num1 % num2; Console.WriteLine("(0) % (1) = (2)", num1, num2, rem); ) ) )
Quando executamos o programa, a saída será:
14,4 + 4,6 = 19 14,4 - 4,6 = 9,8 14,4 * 4,6 = 66,24 14,4 / 4,6 = 3,1304347826087 26% 4 = 2
As operações aritméticas são realizadas no exemplo acima. As variáveis podem ser substituídas por constantes nas instruções. Por exemplo,
resultado = 4,5 + 2,7; // o resultado conterá 7,2 result = firstNumber - 3.2; // o resultado manterá 11,2
3. Operadores relacionais
Operadores relacionais são usados para verificar o relacionamento entre dois operandos. Se a relação for verdadeira, o resultado será true
, caso contrário, resultará em false
.
Operadores relacionais são usados na tomada de decisões e loops.
Operadores relacionais C #Operador | Nome do operador | Exemplo |
---|---|---|
== | Igual a | 6 == 4 avalia como falso |
> | Maior que | 3> -1 avalia como verdadeiro |
< | Menor que | 5 <3 avalia como falso |
> = | Melhor que ou igual a | 4> = 4 avalia como verdadeiro |
<= | Menos que ou igual a | 5 <= 3 avalia como falso |
! = | Diferente de | 10! = 2 avalia como verdadeiro |
Exemplo 3: Operadores relacionais
using System; namespace Operator ( class RelationalOperator ( public static void Main(string() args) ( bool result; int firstNumber = 10, secondNumber = 20; result = (firstNumber==secondNumber); Console.WriteLine("(0) == (1) returns (2)",firstNumber, secondNumber, result); result = (firstNumber> secondNumber); Console.WriteLine("(0)> (1) returns (2)",firstNumber, secondNumber, result); result = (firstNumber < secondNumber); Console.WriteLine("(0) = secondNumber); Console.WriteLine("(0)>= (1) returns (2)",firstNumber, secondNumber, result); result = (firstNumber <= secondNumber); Console.WriteLine("(0) <= (1) returns (2)",firstNumber, secondNumber, result); result = (firstNumber != secondNumber); Console.WriteLine("(0) != (1) returns (2)",firstNumber, secondNumber, result); ) ) )
Quando executamos o programa, a saída será:
10 == 20 retorna False 10> 20 retorna False 10 = 20 retorna False 10 <= 20 retorna True 10! = 20 retorna True
4. Operadores lógicos
Os operadores lógicos são usados para executar operações lógicas, como and
, or
. Operadores lógicos operam em expressões booleanas ( true
e false
) e retornam valores booleanos. Operadores lógicos são usados na tomada de decisões e loops.
Aqui está como o resultado é avaliado para lógico AND
e OR
operadores.
Operando 1 | Operando 2 | OU (||) | AND (&&) |
---|---|---|---|
verdade | verdade | verdade | verdade |
verdade | falso | verdade | falso |
falso | verdade | verdade | falso |
falso | falso | falso | falso |
Em palavras simples, a tabela pode ser resumida como:
- Se um dos operandos for verdadeiro, o
OR
operador o avaliará comotrue
. - Se um dos operandos for falso, o
AND
operador avaliará comofalse
.
Exemplo 4: Operadores lógicos
using System; namespace Operator ( class LogicalOperator ( public static void Main(string() args) ( bool result; int firstNumber = 10, secondNumber = 20; // OR operator result = (firstNumber == secondNumber) || (firstNumber> 5); Console.WriteLine(result); // AND operator result = (firstNumber == secondNumber) && (firstNumber> 5); Console.WriteLine(result); ) ) )
Quando executamos o programa, a saída será:
Verdadeiro falso
5. Operadores unários
Ao contrário de outros operadores, os operadores unários operam em um único operando.
Operadores unários C #Operador | Nome do operador | Descrição |
---|---|---|
+ | Unary Plus | Deixa o sinal do operando como está |
- | Unary Minus | Inverte o sinal do operando |
++ | Incremento | Aumentar o valor em 1 |
- | Decrementar | Diminuir o valor em 1 |
! | Negação lógica (não) | Inverte o valor de um booleano |
Exemplo 5: Operadores unários
using System; namespace Operator ( class UnaryOperator ( public static void Main(string() args) ( int number = 10, result; bool flag = true; result = +number; Console.WriteLine("+number = " + result); result = -number; Console.WriteLine("-number = " + result); result = ++number; Console.WriteLine("++number = " + result); result = --number; Console.WriteLine("--number = " + result); Console.WriteLine("!flag = " + (!flag)); ) ) )
Quando executamos o programa, a saída será:
+ número = 10 - número = -10 ++ número = 11 - número = 10! sinalizador = Falso
Os operadores de incremento (++)
e decremento (--)
podem ser usados como prefixo e postfix. Se usada como prefixo, a mudança no valor da variável é vista na mesma linha e se usada como pós-fixada, a mudança no valor da variável é vista na próxima linha. Isso ficará claro pelo exemplo abaixo.
Exemplo 6: operadores Post e Pré Incremento em C #
using System; namespace Operator ( class UnaryOperator ( public static void Main(string() args) ( int number = 10; Console.WriteLine((number++)); Console.WriteLine((number)); Console.WriteLine((++number)); Console.WriteLine((number)); ) ) )
Quando executamos o programa, a saída será:
10 11 12 12
We can see the effect of using ++
as prefix and postfix. When ++
is used after the operand, the value is first evaluated and then it is incremented by 1
. Hence the statement
Console.WriteLine((number++));
prints 10
instead of 11
. After the value is printed, the value of number is incremented by 1
.
The process is opposite when ++
is used as prefix. The value is incremented before printing. Hence the statement
Console.WriteLine((++number));
prints 12
.
The case is same for decrement operator (--)
.
6. Ternary Operator
The ternary operator ? :
operates on three operands. It is a shorthand for if-then-else
statement. Ternary operator can be used as follows:
variable = Condition? Expression1 : Expression2;
O operador ternário funciona da seguinte forma:
- Se a expressão indicada por Condição for
true
, o resultado da Expressão1 será atribuído à variável. - Se for
false
, o resultado da Expressão2 é atribuído à variável.
Exemplo 7: Operador Ternário
using System; namespace Operator ( class TernaryOperator ( public static void Main(string() args) ( int number = 10; string result; result = (number % 2 == 0)? "Even Number" : "Odd Number"; Console.WriteLine("(0) is (1)", number, result); ) ) )
Quando executamos o programa, a saída será:
10 é número par
Para saber mais, visite operador ternário C #.
7. Operadores Bitwise e Bit Shift
Operadores bit a bit e bit shift são usados para realizar operações de manipulação de bits.
Operadores C # Bitwise e Bit ShiftOperador | Nome do operador |
---|---|
~ | Complemento bit a bit |
E | E bit a bit |
| | OR bit a bit |
^ | OR exclusivo bit a bit |
<< | Shift à esquerda bit a bit |
>> | Shift à direita bit a bit |
Exemplo 8: Operador Bitwise e Bit Shift
using System; namespace Operator ( class BitOperator ( public static void Main(string() args) ( int firstNumber = 10; int secondNumber = 20; int result; result = ~firstNumber; Console.WriteLine("~(0) = (1)", firstNumber, result); result = firstNumber & secondNumber; Console.WriteLine("(0) & (1) = (2)", firstNumber,secondNumber, result); result = firstNumber | secondNumber; Console.WriteLine("(0) | (1) = (2)", firstNumber,secondNumber, result); result = firstNumber secondNumber; Console.WriteLine("(0) (1) = (2)", firstNumber,secondNumber, result); result = firstNumber << 2; Console.WriteLine("(0) <> 2; Console.WriteLine("(0)>> 2 = (1)", firstNumber, result); ) ) )
Quando executamos o programa, a saída será:
~ 10 = -11 10 e 20 = 0 10 | 20 = 30 10 20 = 30 10 <> 2 = 2
Para saber mais, visite C # Bitwise and Bit Shift operator.
8. Operadores de atribuição de compostos
Operadores de atribuição de compostos C #Operador | Nome do operador | Exemplo | Equivalente a |
---|---|---|---|
+ = | Atribuição de adição | x += 5 | x = x + 5 |
- = | Atribuição de subtração | x -= 5 | x = x - 5 |
* = | Atribuição de multiplicação | x *= 5 | x = x * 5 |
/ = | Atribuição de Divisão | x /= 5 | x = x / 5 |
% = | Atribuição de Módulo | x %= 5 | x = x % 5 |
& = | Atribuição E bit a bit | x &= 5 | x = x & 5 |
| = | Atribuição OR bit a bit | x |= 5 | x = x | 5 |
= | Atribuição XOR bit a bit | x ^= 5 | x = x 5 |
<< = | Atribuição de deslocamento para a esquerda | x <<= 5 | x = x << 5 |
>> = | Atribuição de deslocamento à direita | x>>= 5 | x = x>> 5 |
=> | Operador Lambda | x => x*x | Returns x*x |
Exemplo 9: Operador de Atribuição de Composto
using System; namespace Operator ( class BitOperator ( public static void Main(string() args) ( int number = 10; number += 5; Console.WriteLine(number); number -= 3; Console.WriteLine(number); number *= 2; Console.WriteLine(number); number /= 3; Console.WriteLine(number); number %= 3; Console.WriteLine(number); number &= 10; Console.WriteLine(number); number |= 14; Console.WriteLine(number); number ^= 12; Console.WriteLine(number); number <>= 3; Console.WriteLine(number); ) ) )
Quando executamos o programa, a saída será:
15 12 24 8 2 2 14 2 8 1
Discutiremos sobre os operadores Lambda em um tutorial posterior.