NetRunner: Java Mastery Guide 1.0 Help

Operadores Bit a Bit

Operadores Básicos

Manipulação de Bits

// AND bit a bit (&) int and = 12 & 5; // 1100 & 0101 = 0100 (4) // OR bit a bit (|) int or = 12 | 5; // 1100 | 0101 = 1101 (13) // XOR bit a bit (^) int xor = 12 ^ 5; // 1100 ^ 0101 = 1001 (9) // NOT bit a bit (~) int not = ~12; // ~1100 = ...11110011

Operadores de Deslocamento

Shift de Bits

// Shift left (<<) int left = 8 << 2; // 1000 -> 100000 (32) // Shift right (>>) int right = 8 >> 2; // 1000 -> 0010 (2) // Shift right sem sinal (>>>) int unsignedRight = -8 >>> 2; // Preenche com 0

Aplicações Práticas

Uso Comum

// Flags de bit int FLAG_READ = 1; // 0001 int FLAG_WRITE = 2; // 0010 int FLAG_EXECUTE = 4; // 0100 // Combinando flags int permissions = FLAG_READ | FLAG_WRITE; // 0011 // Verificando flags boolean canRead = (permissions & FLAG_READ) != 0;

Otimizações

// Multiplicação por 2 int multiply = num << 1; // Equivalente a num * 2 // Divisão por 2 int divide = num >> 1; // Equivalente a num / 2 // Alternância de bit int toggleBit = num ^ (1 << position);

Máscaras de Bits

Técnicas de Mascaramento

// Máscara para últimos 8 bits int mask = 0xFF; // Aplicando máscara int lastByte = number & mask; // Limpando bits int clearBits = number & ~mask;

Próximos Passos

Tópicos Relacionados

Tipos Primitivos

26 June 2025