Operadores
Operadores aritméticos
| + | Soma |
| – | Subtração |
| * | Multiplicação |
| / | Divisão |
| % | Resto de uma divisão inteira |
Exemplos:
// result = 3
int result = 1 + 2;
System.out.println(result);
// result = 2
result = result - 1;
System.out.println(result);
// result = 4
result = result * 2;
System.out.println(result);
// result = 2
result = result / 2;
System.out.println(result);
// result is now 10
result = result + 8;
System.out.println(result);
// result is now 3
result = result % 7;
System.out.println(result);
Operadores unários
Os operadores unários requerem sómente um operando. Podem ser de incrementação ou de
decrementação. O operador unário de incrementação (++), incrementa o operando de uma
unidade. O operador unário de decrementação, decrementa o operando de uma unidade.
Exemplo:
int num = 3;
num++;
System.out.println(num); //mostra 4 no ecran --num;
System.out.println(num) //mostra 3 no ecran
Os operadores unários podem ser infix ou postfix. Infix significa que o operador é aplicado
antes do operando; postfix significa que o operador é aplicado depois do operando:
int num1=0;
int num2=0;
num1++; //postfix
num2--; //postfix
++num1: //infix
--num2; //infix
Se os operadores unários fizerem parte de uma expressão, o facto de serem infix ou postfix
tem importância porque altera a ordem de incrementação/decrementação dentro da
expressão:
int num1=3;
int num;
num = ++num1; //incremente num1 e depois atribui o valor a num
Systemm.out.println(num); //mostra 4 no ecran
num = num1++; //atribui o valor a num e depois incrementa
System.out.println(num); //mostra 3 no ecran
System.out.println(num1); //mostra 4 no ecran
Operadores relacionais
Os operadores relacionais são usados para comparar dois operandos e determinar o
relacionamento entre eles. O resultado de uma operação relacional é sempre um valor
booleano, true ou false.
| > | Maior |
| >= | Maior ou igual |
| < | Menor |
| <= | Menor ou igual |
| == | Igual |
| != | Diferente |
Exemplos:
public class Test {
public static void main(String args[]) {
int a = 10;
int b = 20;
System.out.println("a == b = " + (a == b) ); //output: false
System.out.println("a != b = " + (a != b) ); //output: true
System.out.println("a > b = " + (a > b) ); //output: false
System.out.println("a < b = " + (a < b) ); //output: true
System.out.println("b >= a = " + (b >= a) ); //output: true
System.out.println("b <= a = " + (b <= a) ); //output: false
}
}
Operadores lógicos
Os operadores lógicos avaliam um ou mais operandos lógicos, retornando no final um valor
booleano, true ou false.
| && | Operador lógico E (AND) |
| || | Operador lógico OU (OR) |
| ! | Operador lógico NÃO (NOT) |
&& (AND)
| op1 | op2 | op1 && op2 |
| true | true | true |
| true | false | false |
| false | true | false |
| false | false | false |
|| (OR)
| op1 | op2 | op1 || op2 |
| true | true | true |
| true | false | true |
| false | true | true |
| false | false | false |
! (NOT)
| op | !op |
| true | false |
| false | true |
Exemplos:
public class Test {
public static void main(String args[]) {
boolean a = true;
boolean b = false;
System.out.println("a && b = " + (a&&b)); //mostra false
System.out.println("a || b = " + (a||b) ); //mostra true
System.out.println("!(a && b) = " + !(a && b)); //mostra true
}
}
Operadores de atribuição
Os operadores de atribuição servem para atribuir um valor a uma variável.
| Operação | Simbolo |
| Atribuição simples | = |
| Soma e atribuição | += |
| Subtração e atribuição | -= |
| Multiplicação e atribuição | *= |
| Divisão e atribuição | /= |
| Módulo e atribuição | %= |
Exemplos:
int n1 = 9;
n1 += 3; //12
n1 -= 4; //8
n1 *= 2; //16
n1 /= 4; //4
n1 %= 2; //0
