Minicursos - C#

Casts


Quando manipulamos dados, seja para operações matemáticas, processos de concatenação ou simplesmente a leitura para armazenamento em variáveis, os destinos e origens devem ser compatíveis, ou seja, não podemos pegar o caractere “g” e armazena-lo em uma variável do tipo inteiro, que espera por um número. Essa é uma característica das linguagens chamadas de fortemente tipadas, ou seja, os tipos de dados devem ser respeitados rigorosamente. C# é uma dessas linguagens. Apenas por curiosidade, o contrário disso são as linguagens fracamente tipadas ou dinamicamente tipadas, que permitem que o tipo de dado armazenado em uma variável seja alterado sem qualquer conversão, ou seja, a variável aceita qualquer tipo de informação que se tentar armazenar nela. JavaScript e PHP são bons exemplos dessas linguagens.

Bem, mas retornando ao que nos interessa, Casts são conversões para que variáveis possam armazenar dados que, a princípio não poderiam ser aceitos por elas. Já vou exibir um exemplo, pois Casts são bastante simples, vejam esse código, que coloca um dado do tipo float em uma variável int:

Casts

Agora vejam a execução desse código no Console:

Casts

Percebam que o valor que eu adicionei propositalmente na variável i foi totalmente substituído pelo valor da variável f, mas a parte armazenada após a vírgula na variável do tipo float foi perdida. Isso acontece porque uma variável int não pode armazenar casas decimais, então no momento do Cast elas são desprezadas.

Convert

Neste exemplo fiz uma conversão de números do tipo float para números do tipo inteiro, mas poderíamos fazer de número para String. Para isso utilizamos uma sintaxe um pouco diferente, veja:

Casts

Percebam que trata-se de uma sintaxe muito intuitiva. Quando digitamos Convert.ToString estamos praticamente ditando o comando ao programa. A saída desse código é:

Casts

Neste exemplo, ao contrário do primeiro, não existe perda de informação, pois convertemos um dado para uma String, e esta pode armazenar qualquer informação em formato de texto.

A classe Convert, utilizada aqui para a conversão, é talvez o método mais completo e eficiente meio para realizar Casts. Ao digitar Convert seguido do ponto no Visual Studio, o IntelliSense já nos mostra todas as conversões possíveis, veja:

Casts

Parse

Por ser tão completa e intuitiva assim, a classe Convert é a forma mais utilizada de Cast, mas também existe outra, que é o método Parse. Imaginem que precisássemos pegar uma String e convertê-la para um número. Utilizando o método Parse, teríamos:

Casts

Existem algumas diferenças técnicas entre os três métodos citados, mas elas não são relevantes agora. Só por curiosidade, o Parse é o mais rápido deles, mas se você está tendo seu primeiro contato com os Casts agora, aconselho-o a usar o Convert, mais comum e completo, até porque essa diferença de velocidade não é significativa para 99% das aplicações.

O importante é saber que os dados podem sofrer conversões e que, em alguns casos alguns, trechos podem se perder. Fiquem sempre atentos a isso!



Algumas notícias

Xiaomi vende 52,9 milhões de celulares no segundo trimestre de 2021 e faturamento dispara

A gigante chinesa Xiaomi registrou um aumento de quase 85% no seu faturamento no segundo trimestre de 2021 em comparação ao mesmo período do ano passado. A receita divulgada pela empresa foi de 13,5 bilhões de dólares (algo em torno de 70 bilhões de reais) nos meses de abril a junho deste ano...

Ler Notícia Completa

Galaxy S9 e Galaxy S9 Plus receberão atualização de segurança este mês

A Samsung começou a liberar esta semana, para proprietários dos modelos Galaxy S9 e Galaxy S9 Plus, uma nova atualização de segurança. Por enquanto somente alguns países da Europa receberam o pacote, que deve ser dis...

Ler Notícia Completa
Ajude o Contém Bits com um cafezinho!

Se você gostou do artigo, se ele lhe foi útil de alguma maneira e você quiser ajudar o Contém Bits, saiba que é simples, fácil e rápido. Basta clicar na imagem do PayPal (ou no cafezinho) e seguir as instruções, em ambiente seguro e com o respaldo do Paypal. Eu agradeço muito! :)


Você gostará destes vídeos!