Precedência do operador em Java

Precedência do operador em Java
Existem vários operadores de Java que lidam com operações como adição, subtração, divisão, comparação e muito mais. Todas essas operações são auxiliadas por vários operadores. Os operadores são aplicados aos operandos e formam uma expressão.

Uma expressão pode conter um ou vários operadores. No caso de vários operadores, os operadores que têm maior precedência serão resolvidos primeiro e, em seguida, outros operadores serão avaliados com base na ordem de precedência. Assim, a precedência da ordem deve ser conhecida quando você está trabalhando em expressões que contêm vários operadores. Este artigo fornece um guia descritivo sobre a precedência dos operadores em Java.

Por que a precedência do operador é importante

Iluminamos a importância da precedência do operador usando uma expressão (como exemplo) fornecida abaixo. A expressão a seguir contém o operador multiplicativo e os operadores aditivos (+ e -). Em Java, o A*B é avaliado primeiro e depois adicionado seguido de subtração é realizado.

a*b+c-d;

Esse mecanismo de avaliação é conhecido como precedência de operadores. Sem esse conceito, alguém teria avaliado a expressão da direita para a esquerda, ou adicionou os operando primeiro, etc.

Observação: Juntamente com a precedência, a associatividade dos operadores também é importante que seja definida como: “De que maneira o operador agirá (da esquerda para a direita ou direita para a esquerda)”.

Como a precedência do operador funciona em java

A precedência dos operadores depende da ordem de precedência predefinida. Esta seção apresenta a ordem de precedência seguida por Java. Além disso, mais tarde nesta seção, praticamos alguns exemplos que esclarecem o conceito de ordem de precedência em Java.

A ordem de precedência e a associativa dos operadores do operador são definidas como mostrado na tabela abaixo:

Operadores Associatividade dos operadores Ordem da precedência
Nomes Símbolos
Incremento pós -fixo, decréscimo ++ , - Da esquerda para direita
Incremento prefixo, decréscimo e unário ++, -, +, -, ~, ! Direita para esquerda
Multiplicativo *, / e % Da esquerda para direita
Aditivo +, -
Mudança >>, <>>
Relacional , =, instanceof
Igualdade ==, !==
Bit nejudado e &
Bitwise xor ^
Bit nejudado ou |
Lógico e &&
Lógico ou ||
Ternário ? : Direita para esquerda
Atribuição =, +=, ==, /=, %=, ^=, | =, =, >>> =

Esta tabela tem quase todos os principais operadores usados ​​em java. Além disso, os exemplos a seguir demonstram o uso de vários operadores em uma única expressão.

Observação: A associatividade dos operadores é descrita na tabela porque a precedência e a associatividade são fenômenos interligados e, por ordem de precedência, é preciso estar ciente da associatividade também.

Exemplo 1: Usando operadores aditivos, multiplicativos e de atribuição

A expressão a seguir usa os operadores aditivos e multiplicativos em vários operandos. Depois disso, o resultado é armazenado em uma variável inteira e Usando um operador de atribuição.

int e = a-b*c+b*d;

A precedência da expressão acima é a seguinte:

  • Em primeiro lugar, ele calculará o (b*d)
  • depois disso (b*d) será calculado
  • Por fim, os operadores aditivos (+, -) são resolvidos

A associativa dos operadores aditivos e multiplicativos é da esquerda para a direita.

O código Java a seguir é exercido para fazer uso da declaração acima.

pacote newpack;
classe pública Precedência
public static void main (string [] args)
// Inicializando variáveis
int a = 4, b = 5, c = 6, d = 7;
// usando operadores aditivos e multiplicativos
int e = a-b*c+b*d;
// imprimindo o e
Sistema.fora.println (e);

A imagem do código e console de saída é fornecida abaixo.

Exemplo 2: Usando operadores lógicos e relacionais

A expressão fornecida abaixo faz uso de operadores lógicos e relacionais em uma expressão.

ac && cA precedência do operador da expressão acima é definida como:

  • Em primeiro lugar, o c e c
  • Depois disso, b> c && c
  • No final, umc && c

Esta expressão é praticada em uma declaração condicional IF-Else descrita no código a seguir.

pacote newpack;
classe pública Precedência
public static void main (string [] args)
// Inicializando variáveis
int a = 7, b = 6, c = 5;
se umc && cSistema.fora.println ("Welcome to linuxhint");

outro

Sistema.fora.println ("Tente novamente!");

A imagem fornecida abaixo mostra a saída do código acima mencionado.

Conclusão

A precedência do operador é praticada por linguagens de programação para resolver uma expressão que contém vários operadores e operando. Este artigo fornece a importância da precedência do operador em Java. Além disso, vários exemplos são explicados que mostram o uso de vários operadores para concretizar o conceito de precedência do operador em Java. Adicionalidade, é fornecida uma tabela que mostra a ordem de precedência de vários tipos de operadores.