Ferrugem - Operadores
Um operador define alguma função que será executada nos dados. Os dados com os quais os operadores trabalham são chamados de operandos. Considere a seguinte expressão -
7 + 5 = 12
Aqui, os valores 7, 5 e 12 são operandos, enquanto + e = são operadores.
Os principais operadores em Rust podem ser classificados como -
- Arithmetic
- Bitwise
- Comparison
- Logical
- Bitwise
- Conditional
Operadores aritméticos
Suponha que os valores nas variáveis aeb são 10 e 5, respectivamente.
Sr. Não | Operador | Descrição | Exemplo |
---|---|---|---|
1 | + (Adição) | retorna a soma dos operandos | a + b é 15 |
2 | -(Subtração) | retorna a diferença dos valores | ab é 5 |
3 | * (Multiplicação) | retorna o produto dos valores | a * b é 50 |
4 | / (Divisão) | executa a operação de divisão e retorna o quociente | a / b é 2 |
5 | % (Módulo) | executa a operação de divisão e retorna o resto | a% b é 0 |
NOTE - Os operadores ++ e - não são suportados no Rust.
Operadores Relacionais
Operadores relacionais testam ou definem o tipo de relacionamento entre duas entidades. Operadores relacionais são usados para comparar dois ou mais valores. Os operadores relacionais retornam um valor booleano - verdadeiro ou falso.
Suponha que o valor de A seja 10 e B seja 20.
Sr. Não | Operador | Descrição | Exemplo |
---|---|---|---|
1 | > | Maior que | (A> B) é falso |
2 | < | Menos do que | (A <B) é verdadeiro |
3 | > = | Melhor que ou igual a | (A> = B) é falso |
4 | <= | Menor ou igual a | (A <= B) é verdadeiro |
5 | == | Igualdade | (A == B) é falso |
6 | ! = | Não igual | (A! = B) é verdadeiro |
Operadores lógicos
Operadores lógicos são usados para combinar duas ou mais condições. Os operadores lógicos também retornam um valor booleano. Suponha que o valor da variável A seja 10 e B seja 20.
Sr. Não | Operador | Descrição | Exemplo |
---|---|---|---|
1 | && (e) | O operador retorna verdadeiro apenas se todas as expressões especificadas retornarem verdadeiro | (A> 10 && B> 10) é False |
2 | || (OU) | O operador retorna verdadeiro se pelo menos uma das expressões especificadas retornar verdadeiro | (A> 10 || B> 10) é verdadeiro |
3 | ! (NÃO) | O operador retorna o inverso do resultado da expressão. Por exemplo:! (> 5) retorna falso | ! (A> 10) é verdadeiro |
Operadores bit a bit
Suponha que a variável A = 2 e B = 3.
Sr. Não | Operador | Descrição | Exemplo |
---|---|---|---|
1 | & (Bit a bit AND) | Ele executa uma operação booleana AND em cada bit de seus argumentos inteiros. | (A e B) é 2 |
2 | | (BitWise OU) | Ele executa uma operação booleana OR em cada bit de seus argumentos inteiros. | (A | B) é 3 |
3 | ^ (XOR bit a bit) | Ele executa uma operação booleana OU exclusiva em cada bit de seus argumentos inteiros. OU exclusivo significa que o operando um é verdadeiro ou o operando dois é verdadeiro, mas não ambos. | (A ^ B) é 1 |
4 | ! (Bit a bit não) | É um operador unário e opera invertendo todos os bits do operando. | (! B) é -4 |
5 | << (Shift à esquerda) | Ele move todos os bits em seu primeiro operando para a esquerda pelo número de casas especificado no segundo operando. Novos bits são preenchidos com zeros. Deslocar um valor para a esquerda em uma posição é equivalente a multiplicá-lo por 2, deslocar duas posições é equivalente a multiplicar por 4 e assim por diante. | (A << 1) é 4 |
6 | >> (Shift à direita) | Operador binário de deslocamento à direita. O valor do operando esquerdo é movido para a direita pelo número de bits especificado pelo operando direito. | (A >> 1) é 1 |
7 | >>> (deslocamento à direita com zero) | Este operador é como o operador >>, exceto que os bits deslocados para a esquerda são sempre zero. | (A >>> 1) é 1 |