O que é o BitMask ?
Uma bitmask é uma técnica que usa um único número inteiro para representar um conjunto de valores booleanos (verdadeiro/falso). Cada bit dentro desse número funciona como um interruptor individual.
Em vez de usar várias variáveis, você usa apenas uma. Cada posição binária ($2^0, 2^1, 2^2...$) representa uma opção diferente.
Você usa lógica binária (AND, OR, XOR) para "ligar", "desligar" ou "checar" o estado de uma opção.
Representação
- 0001: (1): Opção A ativa.
- 0010: (2): Opção B ativa.
- 0011: (3): Opções A e B ativas simultaneamente.
Vantagens principais
- Performance extrema: A CPU processa essas operações instantaneamente, pois é a linguagem nativa do hardware.
- Compactação: Você pode guardar 32 ou 64 estados diferentes em uma única variável simples.
- Simplicidade de armazenamento: É muito fácil salvar um único número em um banco de dados ou enviar via API do que uma estrutura complexa de objetos.
Cidades e Fuso horários
- Moscow: GMT 3
- Paris: GMT 2
- Berlin: GMT 2
- Brussels: GMT 2
- Amsterdam: GMT 2
- Rome: GMT 2
- London: GMT 1
- Dublin: GMT 1
- New York: GMT -4
- Washington, DC: GMT -4
- St. Louis: GMT -5
- Los Angeles: GMT -7
- Tokyo: GMT 9
- Beijing: GMT 8
- Ho Chi Mihn City: GMT 7
- Mumbai: GMT 5