Olá Pessoal, tudo bom?
Continuando nossa descrição básica sobre os operadores no Java, hoje é dia de falar sobre o operador bitwise complement ou NOT. A décima primeira parte desse artigo se encontra aqui. Confira na continuação desse artigo sobre o operador bitwise complement:
Operador Bitwise Complement
O operador bitwise complement é definido pelo simbolo abaixo:
| Operador | Descrição |
|---|---|
| ~ | Operador Bitwise para operações unárias de Bitwise do tipo NOT |
Para realizar o seu processo o operador aplica a tabela verdade do NOT, conforme tabela abaixo, a qual indica que o bit será invertido ao final da execução:
| Bit | NOT – Valor Final |
|---|---|
| 0 | 1 |
| 1 | 0 |
Esse operador é unário, logo ele realiza a operação apenas sobre 1 Bit, que por padrão de convenção adotaremos como Flag:
|
1 2 3 |
NOT 1 0 0 0 0 1 1 0 (Flag) --------------- 0 1 1 1 1 0 0 1 (Resultado da operacao) |
Abaixo temos uma classe de exemplo que trabalha com o operador bitwise complement:
|
1 2 3 4 5 6 7 8 9 10 11 |
package br.com.mauda.operadores; public class OperadorBitwiseComplement { public static void main(String[] args) { int flag = 0x2222; //Em binario 0010 0010 0010 0010 // =================== //Em binario 1101 1101 1101 1101 int resultado = ~flag; System.out.println("Resultado da operacao bitwise complement: " + resultado); } } |
O resultado da execução dessa classe será o seguinte:
|
1 |
Resultado da operacao bitwise complement: -8739 |
Precedência dos Operadores
Continuando a formular a tabela de precedência, agora segue o operador bitwise complement, o qual está junto com os operadores Pré fixo e Unário, assim verifique a tabela abaixo:
| Ordem | Tipo de Operador | Precedência |
|---|---|---|
| 1 | Pós Fixo | expr++ expr– |
| 2 | Pré fixo e Unário | ++expr –expr +expr -expr ~ ! |
| 3 | Multiplicativo | * / % |
| 4 | Aditivo | + – |
| 5 | Relacional | > >= <= < instanceof |
| 6 | Igualdade | == != |
| 7 | Bitwise AND | & |
| 8 | Bitwise exclusive OR | ^ |
| 9 | Bitwise inclusive OR | | |
| 10 | AND Lógico | && |
| 11 | OR Lógico | || |
| 12 | Ternário | ? : |
| 13 | Atribuição | = += -= *= /= %= |
finnaly{
Duvidas ou sugestões? Deixe seu feedback! Isso ajuda a saber a sua opinião sobre os artigos e melhorá-los para o futuro! Isso é muito importante!
Até um próximo post!
Leave a Reply