Operadores aritméticos e de atribuição explicados em Java
Operadores aritméticos permitem que você execute aritmética algébrica na programação. Ou seja, eles permitem adicionar, subtrair, dividir e multiplicar números.
Este artigo também cobrirá os operadores de atribuição. Eles permitem que você dê (atribua) um certo valor a uma variável.
Este tutorial não é apenas para programadores Java. Muitas outras linguagens de programação como C e Python usam esses mesmos operadores. Portanto, você pode facilmente transferir e aplicar o conhecimento que adquire aqui.
Operadores aritméticos
Existem 5 operadores aritméticos em Java – a tabela abaixo os resume.
Nome do operador | Símbolo | Expressão de Amostra |
---|---|---|
Adição | + | x + 3 |
Subtração | – | y-8 |
Multiplicação | * | x * y |
Divisão | / | x / 2 |
Restante | % | y% 3 |
Os símbolos ( + , – , / ) devem parecer familiares. Isso porque eles são iguais aos normalmente usados em álgebra.
É importante observar que o operador de divisão ( / ) se refere à divisão de inteiros aqui. Ou seja, 19/5 será avaliado como 3 . Qualquer parte fracionária resultante desse cálculo é truncada.
Você também deve ter notado que o operador Java para multiplicação é um asterisco ( * ) e não o símbolo de multiplicação usual ( × ).
Para obter o módulo de dois inteiros, Java usa o símbolo % . O exemplo dado na tabela é semelhante à expressão algébrica: y mod 3 . O operador % fornece o resto após y ser dividido por 3 . Ou seja, 19% 5 será avaliado como 4 .
É uma boa prática usar parênteses para agrupar subexpressões. Isso facilita a legibilidade e ajuda a evitar erros de lógica e sintaxe.
( 4*y+(z/3)) // example
Quando você tem vários operadores aritméticos em uma expressão, Java usa as regras de precedência do operador para determinar quais subexpressões avaliar primeiro.
A tabela a seguir categoriza os níveis de precedência do operador.
Precedência | Operador | Descrição |
---|---|---|
1 | * / % | Multiplicação, divisão e módulo têm o mesmo nível de precedência. Se houver vários operadores desse tipo usados, eles serão avaliados da esquerda para a direita. |
2 | + – | Adição e subtração têm o mesmo nível de precedência. Se houver vários operadores desse tipo usados, eles serão avaliados da esquerda para a direita. |
3 | = | Este operador é avaliado por último. |
Os operadores ( * , / , % ) têm o nível de precedência mais alto, seguidos por ( + , – ) e finalmente ( = ). Os operadores ( * , / , % ) e ( + , – ) todos se associam da esquerda para a direita. Isso significa simplesmente que sua avaliação começa a partir do operador mais à esquerda.
O terceiro operador ( = ) associa da direita para a esquerda. Portanto, se x = 3 , significa que 3 é atribuído a x , e não x é atribuído a 3.
Operadores de atribuição
O operador de atribuição ( = ) atribui um valor a uma variável.
y = y+7;
A expressão acima adiciona 7 a y e, em seguida, atribui o resultado final a y . Se você é novo em programação, esta expressão pode parecer um pouco estranha. Isso não deve incomodá-lo, pois o compilador entenderá o que você está tentando fazer.
Atribuição Composto
Você pode simplificar a maneira de expressar uma atribuição usando um operador de atribuição composto.
No exemplo anterior, poderíamos simplesmente ter escrito:
y+=7;
Consulte a tabela abaixo sobre como você pode usar operadores de atribuição compostos.
Operador Composto | Expressão de Amostra | Forma expandida |
---|---|---|
+ = | x + = 2 | x = x + 2 |
– = | y – = 6 | y = y-6 |
* = | z * = 7 | z = z * 7 |
/ = | a / = 4 | a = a / 4 |
% = | b% = 9 | b = b% 9 |
Operadores de incremento e decremento
Se você tiver a atribuição composta + = 1 , poderá simplesmente escrevê-la como ++ . Isso é conhecido como "operador de incremento". Da mesma forma, o operador de decremento é – .
Quando usados antes do operando, os operadores de incremento e decremento são conhecidos como "operadores de prefixo". E quando usados após o operando, eles são chamados de "operadores pós-fixados".
Com prefix, a variável que está sendo operada é primeiro modificada e então usada, enquanto com postfix, o valor inicial antes da modificação é usado.
y++; //postfix, most preferred form by many programmers
++y; // prefix
Geralmente, os operadores postfix e prefix produzem a mesma resposta. É apenas ao lidar com expressões grandes que a resposta pode mudar.
Faça os operadores trabalharem para você
É importante notar que os operadores de incremento e decremento atuam apenas em variáveis (por exemplo, x ++ ) e não em valores diretos (mas não em 5 ++ ). Você também não deve deixar nenhum espaço em branco ao usar os operadores de incremento e decremento, ao contrário dos operadores anteriores. Isso resultará em um erro de tempo de compilação.
Sempre use parênteses quando possível para agrupar logicamente as expressões. Isso evitará erros de lógica desnecessários.
Com esses operadores em seu currículo, entender como usar modificadores de acesso em Java será muito fácil.