Clojure - Operadores

A operator é um símbolo que diz ao compilador para realizar manipulações matemáticas ou lógicas específicas.

Clojure tem os seguintes tipos de operadores -

  • Operadores aritméticos
  • Operadores relacionais
  • Operadores lógicos
  • Operadores bit a bit

Note - No Clojure, os operadores e operandos funcionam da seguinte maneira de sintaxe.

Sintaxe

(operator operand1 operand2 operandn)

Por exemplo,

Exemplo

(+ 1 2)

O exemplo acima faz uma operação aritmética nos números 1 e 2.

Operadores aritméticos

A linguagem Clojure suporta os operadores aritméticos normais como qualquer linguagem. A seguir estão os operadores aritméticos disponíveis em Clojure.

Mostrar exemplos

Operador Descrição Exemplo
+ Adição de dois operandos (+ 1 2) dará 3
- Subtrai o segundo operando do primeiro (- 2 1) dará 1
* Multiplicação de ambos os operandos (* 2 2) dará 4
/ Divisão do numerador por denominador (flutuação (/ 3 2)) dará 1,5
inc Operadores incrementais usados ​​para incrementar o valor de um operando em 1 inc 5 dará 6
dezembro Operadores incrementais usados ​​para diminuir o valor de um operando em 1 5 de dezembro dará 4
max Retorna o maior de seus argumentos no máximo 1 2 3 retornará 3
min Retorna o menor de seus argumentos min 1 2 3 retornará 1
rem Restante da divisão do primeiro número pelo segundo rem 3 2 dará 1

Operadores Relacionais

Os operadores relacionais permitem a comparação de objetos. A seguir estão os operadores relacionais disponíveis em Clojure.

Mostrar exemplos

Operador Descrição Exemplo
= Testa a igualdade entre dois objetos (= 2 2) dará verdadeiro
não = Testa a diferença entre dois objetos (não = 3 2) dará verdadeiro
< Verifica se o objeto esquerdo é menor que o operando direito (<2 3) dará verdadeiro
<= Verifica se o objeto esquerdo é menor ou igual ao operando direito (<= 2 3) dará verdadeiro
> Verifica se o objeto esquerdo é maior que o operando direito (> 3 2) dará verdadeiro
> = Verifica se o objeto esquerdo é maior ou igual ao operando direito (> = 3 2) dará verdadeiro

Operadores lógicos

Operadores lógicos são usados ​​para avaliar expressões booleanas. A seguir estão os operadores lógicos disponíveis no Groovy.

Mostrar exemplos

Operador Descrição Exemplo
and Este é o operador lógico “e” (ou verdadeiro verdadeiro) dará verdadeiro
or Este é o operador lógico “ou” (e verdadeiro falso) dará falso
not Este é o operador lógico “não” (não falso) dará verdadeiro

O fragmento de código a seguir mostra como os vários operadores podem ser usados.

Operadores bit a bit

Clojure fornece quatro operadores bit a bit. A seguir estão os operadores bit a bit disponíveis no Clojure.

Mostrar exemplos

Sr. Não. Operador e descrição
1

bit-and

Este é o operador “e” bit a bit

2

bit-or

Este é o operador bit a bit “ou”

3

bit-xor

Este é o bit a bit “xor” ou operador exclusivo 'ou'

4

bit-not

Este é o operador de negação bit a bit

A seguir está a tabela de verdade mostrando esses operadores.

p q p & q p | q p ^ q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1

operador precedente

Como é o caso com LISPs em geral, não há necessidade de se preocupar com a precedência do operador. Este é um dos benefícios das expressões S e da notação de prefixo. Todas as funções são avaliadas da esquerda para a direita e de dentro para fora. Os operadores em Clojure são apenas funções e tudo está entre parênteses.