Dev (Back & Front)ARTIGO

C# 7.0: Binary Literals

Neste artigo, o autor apresenta algumas funções novas da versão C# 7.0, mais especificamente, sobre Binary Literals.

Versões anteriores do C# possibilitavam a declaração de valores numéricos no formato hexadecimal (recurso conhecido como Hexadecimal Literals) com essas representações sendo precedidas por ox ou 0X, como demonstrado na listagem a seguir:

private const int LETRA_Y_HEX = 0x59; // 59 (hexadecimal) = 79 (decimal)
private const int LETRA_Z_HEX = 0X5A; // 5A (hexadecimal) = 80 (decimal)

O C# 7.0 traz também a possibilidade de declarar valores no padrão binário, funcionalidade esta chamada de Binary Literals. Na próxima listagem há um exemplo de uso dessa opção, com os valores binários sendo antecedidos por 0b ou 0B:

using System;
 
namespace ExemploBinaryLiterals
{
    class Program
    {
        private const int LETRA_Y_BIN = 0b01011001; // 89
        private const int LETRA_Z_BIN = 0B01011010; // 90
 
        static void Main(string[] args)
        {
            Console.WriteLine("Exemplo de uso - Binary Literals");
            Console.WriteLine($"Y = {LETRA_Y_BIN}");
            Console.WriteLine($"Z = {LETRA_Z_BIN}");
            Console.ReadKey();
        }
    }
}

O resultado da execução deste trecho de código pode ser observado na imagem a seguir:

Referências

New Features in C# 7.0

https://blogs.msdn.microsoft.com/dotnet/2017/03/09/new-features-in-c-7-0/

Atua como consultor em atividades voltadas ao desenvolvimento de sistemas há mais de 15 anos. Microsoft MVP (Most Valuable Professional) e participante do programa MTAC (Multi-Plataform Technical Audience Contributor). Bacharel em Sistemas de Informação, com Especialização em Engenharia de Software e MBA em Business Intelligence. Também é palestrante e autor técnico em portais e revistas especializadas, com foco em tecnologias Microsoft e boas práticas na área de software.

Ver perfil